본문 바로가기
Engineering WIKI/Js

[JS] 자바스크립트 ES6

by wonos 2021. 6. 15.
  1. 변수 스코프
    • 변수와 상수는 스코프마다 선언가능. 스코프는 중괄호로 감싼 범위를 나타냄
    const schoolName = "ABC";
    
    schoolName = "CBA"; // Error
    
    
    let a = "aaaa";
    a = "CCCC";  // Success
    ​

    • const는 변수 자체가 가지는 참조를 바꾸지 못할 뿐 변수가 가지는 객체의 참조는 바꿀 수 있다.
    const obj = {
    	a : 1,
    	b : 2,
    	c : 3
    }
    
    obj.a = 10; // 정상
    obj = 값 // 에러​
  2. 템플릿 문자열
    • 문자열 또는 문자열을 덧셈(+) 연산자를 통해 하나의 문자열로 만든 방식에서 백틱(`)과 ${}으로 문자열을 생성하는 방식
    • 이전 코드
    const num1 = 10;
    const num2 = 20;
    
    console.log(num1 + ' + ' + num2 + ' = ' + (num1+num2) +  " 입니다.");​

    • 백틱 과 ${} 적용 코드
    const num1 = 10;
    const num2 = 20;
    
    console.log(`${num1} + ${num2} = ${num1+num2} 입니다.`);​
  3. 화살표 함수
    • 화살표 함수는 기존의 함수 선언 방식을 축약적으로 표현, 이로 인해서 함수를 값(value)처럼 사용 가능
      const a = () => {
      
      }​
    • .Before
      function sum(a,b) {
      	return a + b
      }​
    • .After
    • const sum = (a, b) => {return a + b}
  4. 스프레드 연산자
    • ...을 이용하여 스프레드 연산을 할 수 있음
    • 스프레드 연산자는 새로운 값을 만들어 (clone) 사용할 때 이용
      let a = [1,2,3]
      
      let b = a
      
      b.push(4)
      
      console.log(a.length, b. length) // 4, 4
      
      // b를 수정했지만 동일한 포인터를 가지기 때문에 a값도 수정이 이루어짐
      
      // 해결 방안
      let a = [1, 2, 3]
      
      let b = [...a]
      
      b.push(4)
      
      console.log(a.length, b.length) // 3, 4
      
      /*
      ...a는 새로운 배열을 만들어 b에 할당하기 때문에 a와 b는 다른포인터(참조)를 가짐
      */

'Engineering WIKI > Js' 카테고리의 다른 글

[JS] Ajax 중복호출 방지 (코드 포함)  (0) 2022.09.17
[JS] FormData  (0) 2020.11.29
[JS] formData를 console.log 출력  (0) 2020.11.29
[Js] this 개념 및 활용  (0) 2020.04.26
[Js] IE Default Error  (0) 2020.04.05
[JS] select의 선택된 값 구하기  (0) 2020.04.05
[JS] array 중복 제거  (0) 2019.09.04
[Jquery] HTML 태그 바꾸기  (0) 2019.08.17