728x90
반응형
// 변수 var, let, const 키워드를 사용해서 변수를 생성
// const : 상수. 변수를 생성했을 때 값을 할당해야 한다.
// boolean : true / false (참, 거짓)
// 

// var v1 = 2.5
// v1 = 3;
// var v1 = 44;
// console.log(v1);

// let v2 = true;
// v2 = 4;
// console.log(v2);


// let massage = 'This is test';
// console.log(massage);

// // 공백문자 == 띄어쓰기
// let version = 'ECMAScript';
// let versionNumber = 6; 
// console.log('C:\\Users\\Administrator')
// console.log('This script is ' + version + versionNumber);


/*********** 연산자 ***************/
// +, -, /, *, %(나머지 연산)
// 5 % 2 => 몫:2, 나머지:1
// const a1 = 5;
// const a2 = 2;
// console.log(a1 + '/' + a2 + '-> 몫: ' + (a1 / a2) + '나머지 : ' + (a1 % a2));

// console.log(`${a1} / ${a2} -> 몫: ${a1/a2}, 나머지: ${a1%a2}`)





// const v3 = 0x10; // -> 10진수로 16


// 변수 명명규칙 CamelCase, PascalCase, SnakeCase
// LowerCamelCase: 단어마다 대문자, 시작은 소문자
// thisIsCamelCase
// PascalCase, UppwerCamelCase: 단어마다 대문자, 시작도 대문자
// ThisIsCamelCase
// SnakeCase: 단어마다 _ 로 잇기 (전부 소문자)
// this_is_snake_case 
// JS에서 권고하는 방식 
// 함수, 변수 => 카멜케이스로 작성
// 클래스 => 파스칼케이스

//  변수 > 카멜,  함수 > 스네이크, 클래스 > 파스칼



/*--- 220927 ---*/

// 조건문, 절 (if, switch)
// JS에서의 비교 연산
// a == b : a값이 b값과 동일한가 ? 에 대한 결과를 반환. 단, 형변환을 할 수 있다면 형변환 후 판단
// a != b : a값이 b값과 동일하지않은가 ? 에 대한 결과를 반환. 단, 형변환을 할 수 있다면 형변환 후 판단
// a === b : a값이 b값과 동일한가? 에 대한 결과를 반환, 형변환하지 않고 그 값 그대로 판단
// a !== b : a값이 b값과 동일하지않은가? 에 대한 결과를 반환, 형변환하지 않고 그 값 그대로 판단
// true == '1'
let num1 = 10;
const num2 = 5;
console.log(`num1 < num2 -> ${num1 < num2}`);
console.log(`num1 <= num2 -> ${num1 <= num2}`); 

// if(조건) {
//     조건이 참일때 실행할 실행문
// }
// if - else if - else
if(num1 < num2) {
    console.log('참')
} 
else if(num1 === num2){
    console.log('같다')
}

else{
    console.log('거짓')
}

// && : AND, ||: OR, !: NOT


// switch : 하나의 데이터 값을 다른 여러 데이터랑 비교 연산을 함
// switch(판단하고 싶은 데이터){
//     case 데이터와 비교할값:
//         break;
//     defaule:
//         break;
// }

num1 = 5;
switch(num1){
    case 1:
        console.log(1);
        break;
    case 2:
        console.log(5);  
    case num2:
        console.log('num2');
    default:
        console.log('해당없음');
}

// ++, -- 증감연산
// +=, -=. *=, /=, %=, &=, |=, ??= 대입연산
// a &= b   >   a && b 여부를 a에게 대입
// a |= b   >   a || b 여부를 a에게 대입
// a ??= b  > a가 null이거나 undefined 일 때만 b 값을 a에게 대입
// 증감연산, 1 ( 한 단계) 증가, 또는 감소시킨다
let n1 = 4;
++n1;
n1++; // n1 은 5가 된다 > n1 = n1 + 1; > n1 += 1;
n1--; // n1은 4가 된다 > n1 = n1 - 1; > n1 -= 1;
--n1;


let number1 = 1;
let number2 = 1;
let result1 = number1++; //후위: 현재 명령(연산)을 끝낸 후, 증가
let result2 = ++number2; //전휘: 현재 명령(연산)을 하기 전에 증가
console.log(`number1 : ` + number1)
console.log(`number2 : ` + number2)
console.log(`result1 : ` + result1)
console.log(`result2 : ` + result2)

// 반복절 (문)
// for - 반복횟수가 있을 때 사용하면 좋음, while - 조건이 있을 떄 사용하면 좋다.

// while(조건){ 조건이 맞을 떄 실행 할 명령문 }
let number = 0;
while(number < 10){
    console.log(number);
    number++;
}

// for(초기화식; 조건식; 증감식) { 조건이 true 일 떄 실행할 명련문}
// 초기화식 : 변수를 생성하거나 변수에 값을 대입함
// 조건식: for 반복을 언제까지 진행할지에 대한 조건식
// 증감식 : 변수의 값을 변경하거나 증감/감소 시킴
for(let a = 1; a < number; a++){
    console.log(`실행${a}`);
}







 

 

 

 

 

// 출력 ( 모니터 결과를 보여주세요.)
// stdout(standard out.) 기본 출력 -> 모니터
// 자바스크립트 : 웹 브라우저의 콘솔창.
// 자바 : 이클립스 혹은 인텔리제이 등의 콘솔창.
// console.log(데이터)


//산술연산자(+, -, /, *, &)
//대입연산자(+=, -=, *=, /=, %=)
// 자기 자신에게 연산해줌
let a = 10;
a += 3; // a = a + 3;
//증감연산자(++, --)
// ++, -- 가 앞에 있으면 전위 , 뒤에 있으면 후위 연산
a++;
++a;
//관계연산자(>, <, <=, >=, ==, !=)
// 자바스크립트는 + (===, !==)
// === 실제 그대로 값을 비교
// == 형변환 가능하면 형변환 후 비교
//논리연산자(&&, ||, !)


//조건(if, switch)
let c = 10;
if(c == 10){
    console.log('10과 같아요');
}


// 조건문(switch)
let e = 50;
switch(e){
    case 50:
        console.log('50입니다.');
        break;
    case 70:
        console.log('70입니다.');
    default :
        console.log('아무 값도 해당없습니다.')

}

//반복문 (while)
let f = 10;
while(f < 20){
    console.log(f);
    f++;
}

//반복문 (for)

for (let i = 0; i < 10; i++) {
    console.log(i);
}

// 다중(중첩) while, for

// 반복문 내부에 반복문 존재...
let g = 0;
while(g < 10){
    let f = 0;
    while(f < 10){
        console.log(`g: ${g}`);
        console.log(`f: ${f}`);
        f++;        
    }
    g++;
}


for (let i = 0; i < 10; i++) {
    for (let j = 0; j < 10; j++) {
        console.log(`i: ${i}`);
        console.log(`j: ${j}`);
    }
}




//배열(값을 여러 개 가지는 하나의 구조)
// let 변수명 = [값1, 값2, 값3 ...]
let arr = [1, 2, 3, 4, 5, 6];
let s = "string";
//index : 배열 혹은 반복가능객체(문자열)에 저장되어 있는 값의 위치 번호(0부터 시작)
// 배열에서 값 가져오기 : 배열이름[index번호]
// 배열의 값 변경하기 : 배열이름[index] = 새로운값
console.log(arr[4]);
console.log(s[3]); // 자바에서는 불가능
arr[5] = 500;
console.log(arr[5]);

arr.push(800); //배열의 마지막 요소로 값을 추가
arr.unshift(1000);// 배열의 첫 요소로 값을 추가
console.log(arr.pop()); // 배열의 마지막 요소를 제거하고 가져옴
console.log(arr.shift()); // 배열의 첫 요소를 제거하고 가져옴
console.log(arr);


for (let i = 0; i < arr.length / 2; i++) {
    let num1 = arr[i];
    let num2 = arr[arr.length - 1 - i];
    arr[0] = num2;
    arr[arr.length - 1 - i] = num1;
}
console.log(arr)


function welcome() {
    console.log('안녕하세요!');
}
welcome();

function greet(name, message='하이') {
    console.log(`${name}씨, ${message}`);
}
greet('김김김', '안녕하세요~');

function get_message(){
    return "System - 오류입니다.";
}
let m = get_message();
console.log(m);


function sum(num1, num2){
    return num1 + num2;
}
console.log(sum(10, 100));




let test = () => {
    console.log('test실행')
}
test();

// 숫자 2개를 함수에 전달하고 숫자 2개의 사이 값들을 전부 합한
// 결과를 반환하는 함수 calc를 생성하세요.

let calc = (num1, num2) => {
    if(num1 > num2){
        let tmp = num1;
        num1 = num2;
        num2 = tmp;
    }
    let sum = 0;
    for (let i = num1+1; i < num2; i++) {
        sum += i;
    }
    return sum;
}
console.log(calc(1,4));






728x90
반응형

'코딩일지 > WEB' 카테고리의 다른 글

js 기초 3  (2) 2023.01.01
js 기초2  (0) 2023.01.01
요소 정렬 방법  (0) 2023.01.01
flex 설명  (0) 2023.01.01
grid실습  (0) 2023.01.01

+ Recent posts

">