ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JavaScript
    WEB 2021. 1. 5. 20:54

    JavaScript

    • 문법이 철저하지 않음
    • 변수 선언할때 타입을 따로 설정 안해도 됨
    • 오류가 생겨도 찾기 쉽지 않음

    Node

    • npm : node 패키지들을 사용할 수 있도록 관리해주는 도구

    React

    • npx : npm 5.2 + 버전의 패키지 실행도구
    • 프로젝트 세팅

    npx create-react-app [이름]
    cd [이름]
    npm start

    JS

    • script 쓸때 defer 쓰면 페이지가 모두 로드되고 이후에 외부 스크립트 실행
    • async 실행순서 보장 안됨
    • var, let, const
      • var : 유효범위 구분x. (지역, 전역 변수를 구분 할 수 없음)
      • let : 특정 영역에서 지역변수로 사용할 수 있음.
      • const : 값이 변경되지 않는 상수.

     

    02. JavaScript_commnad

    1. if 조건문
    2. if(조건식) { 실행문; }let month = prompt("월 입력 :", ""); if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){ console.log(`${month}월은 31일 까지 있습니다.`) } else if(month==2){ console.log(`${month}월은 28일 까지 있습니다.`) } else if(month==4||month==6||month==9||month==11){ console.log(`${month}월은 30일 까지 있습니다.`) } else{ console.log(`${month}월이 맞는지 확인하세요.`) }
    3. switch 문
    4. switch(변수명){ case 변수값 : 실행문 break; case 변수값 : 실행문 break; default : 기타 실행문; }switch(month){ case '1': case '3': case '5': case '7': case '8': case '10': case '12': console.log(`${month}월은 31일까지 있습니다.`) break; case '2': console.log(`${month}월은 28까지 있습니다.`) break; case '4': case '6': case '9': case '11': console.log(`${month}월은 30일까지 있습니다.`) break; default: console.log(`${month}월이 맞는지 확인하세요.`) }
    5. 반복문
      1. while 문
      2. 초기값; while(조건식){ 참일때 실행문; 증감식; }let index = 1; let sum = 0; while(index < 11){ sum += index; // sum = sum + index; index++; // index = index + 1; } console.log(`1~10 합 : ${sum}`);
      3. do while 문
      4. 초기값; do{ 실행문; 증감식; }while(조건식);let index = 1; let sum = 0; do{ sum += index; index++; } while(index < 11); console.log(`1~10 합 : ${sum}`);
      5. for 문
        let sum = 0;
        for(index = 1; index < 11; index++){
            sum += index;
        }
        console.log(`1~10 합 : ${sum}`);
      6. for(초기값; 조건식; 증감식){ 실행문; } for(데이터 in|of 리스트 데이터){ 실행문; }
    6. 기타 (return - 함수종료(반환), break - 반복문 종료, continue - 뒤에 skip하고 반복문)
    7. let sum = 0; for(index = 1; index< 11; index++){ if(index%2==0) continue; sum += index; } console.log(`1~10 홀수 합 : ${sum}`); //nested for문 for(i1 = 1; i1 < 10; i1++){ for(i2 = 1; i2 < 10; i2++){ console.log(`${i1} * ${i2} = ${i1*i2}`); } }

     

    03. JavaScript_variable

    • variables
      • var : 유효범위 구분 없음
      • let : 유효범위 구분 위해 사용
      • const : 상수 선언. 값 변경 없이 read Only로 사용
    var x; 
    x = 6;
    const constVariable = 10;
    let globalVariable = 5;
    {
       let localVariable = 5;
       var y = 5;
       console.log("localVariable", localVariable);
       console.log("globalVariable", globalVariable);
       console.log("var x", x);
       console.log("var x", x);
       console.log("const", constVariable);
    }
    //constVariable = 100; 상수는 값 할당 안됨
    //console.log("localVarialbe", localVariable; 지역변수로 선언되어있음
    console.log("globalVariable", globalVariable);
    console.log("var x", x);
    console.log("var y", y);
    document.getElementById("data").innerHTML = "<h3>variable x= "+x+"</h3>";
      • data type
        • primitive (int, float, char, boolean)
        • reference (Class, Array)
    let intV = 10;
    let floatV = 10.5;
    let stringV = "10";
    let booleanV = true;
    console.log("data type")

     

    04. JavaScript_Operator

    1. 산술 연산자 (+, -, *, /, %)
    2. let x = 10; let y = 20; ​ console.log(`${x} + ${y} = ${x+y}`); console.log(`${x} - ${y} = ${x-y}`); console.log(`${x} * ${y} = ${x*y}`); console.log(`${x} / ${y} = ${x/y}`); console.log(`${y} % ${x} = ${x%y}`);
    3. 대입 연산자 (=)
    4. const z = x+y; console.log(z);
    5. 비교 연산자 (>, <, >=, <=, !=, ===, !==)
    6. console.log(`${x} > ${y} = ${x>y}`); console.log(`${x} < ${y} = ${x<y}`); console.log(`${x} >= ${y} = ${x>=y}`); console.log(`${x} <= ${y} = ${x<=y}`); console.log(`${x} == ${y} = ${x==y}`); console.log(`${x} != ${y} = ${x!=y}`);
    7. 논리 연산자 (&&, ||, ^, ~)
    8. if((x<y) && x!=0) { console.log(`${x} < ${y} and ${x} is not 0`); }
    9. 비트 연산자(&, |, ~, >>, <<)
    10. x=4; console.log(`${x} >> 2 = ${x>>2}`); console.log(`${x} << 2 = ${x<<2}`);
    11. 삼항 연산자 : 조건 ? 참 : 거짓
    12. x == y ? console.log(`${x} == ${y}`) : console.log(`${x} != ${y}`);

     

    05. JavaScript_Function

    • javascript는 일급 함수
    • 함수 정의 함수 호출해서 사용
    • 정의
    • function(p1, p2, ...){ 내용; return data; }
    • 호출
      let functionV = function(p1,p2,...){
      내용;
      return data;
      }
      functionV : 함수객체
      arraw function : (p1, p2, ...) => {
       내용;
       return data;
      }
      //함수 정의
      function add(x, y){
         return x+y;
      }
      ​
      //함수 사용
      let sum = add(10,20);
      console.log("add(10,20 = ", sum);
      ​
      //익명 함수
      let substarct = function(x, y){
         return x - y;
      }
      console.log("substract(20,10) = ", substarct(20,10), typeof substarct);
      ​
      //arrow function
      let divide = (x, y) => console.log(`divide(${x},${y}) = `, x/y);
      divide(20,10);
      ​
      //함수 선언 및 실행
      let multiply = ((x,y)=>{console.log(`multiply(${x}*${y} = `, x*y)})(20,10);
      ​
      //클로져
      //함수에서 다른 함수 리턴
      function makeAdder(x){
         let y = 1; //makeAdder function local variable
         return function(z){
             y = 100; // 외부함수 local variable 사용
             return x+y+z;
        }
      }
      ​
      let add5 = makeAdder(5);
      let add10 = makeAdder(10);
      console.log(add5(2), add5);
      console.log(add10(2), add10);
      ​
      //클로져
      function multi(n){
         return function(){
             return n *= n;
        }
      }
      ​
      let multi5 = multi(5);
      let multi10 = multi(10);
      console.log(multi5, multi5());
      console.log(multi10, multi10());
      ​
      //재귀함수
      function factorial(n){
         if(n === 1){
             console.log('호출 끝');
             return 1;
        }
         else{
             console.log('호출' + n);
             return n*factorial(n-1);
        }
      }
      console.log("10!", factorial(10));


    • let data = 함수명 (p1, p2, ...)

    'WEB' 카테고리의 다른 글

    JDBC(Java Database Connectivity)  (0) 2020.12.29
    JSTL  (0) 2020.12.23
    Scope  (0) 2020.12.18
    표현언어 EL(Expression Language)  (0) 2020.12.18
    Redirect  (0) 2020.11.18
Designed by Tistory.