-
spread, rest, 구조분해, 화살표함수, 배열, 객체Topic/JavaScript 2021. 11. 25. 21:44반응형
Spread 문법
배열을 풀어서 인자로 전달하거나, 배열을 풀어서 각각의 요소로 넣을 때에 사용
spread 문법은 기본 배열을 변경하지 않는다. (immutable)
테스트 함수 expect 함수 사용법
expect(테스트하는 값).기대하는 조건
expect(isMost(3)).to.be.true // => 'isMost(3)'의 결과값은 참(true)이어야 한다'. expect(1 + 2).to.equal(3) // => 'sum(1, 2)의 결과값은 3과 같아야(equal) 한다'.
-> '기대하는 조건'에 해당하는 함수를 matcher라고 한다.'참인 것이어야 한다' => to.be.true'3과 같아야 한다' => to.equal(3)expect('테스트하는 값).to.equal('기대하는 값')
'const'로 선언된 변수에는 재할당(reassignment)가 금지된다.
재할당은 금지되지만, 'const'로 선언된 배열의 경우, 새로운 요소를 추가하거나 삭제할 수 있고,
'const'로 선언된 객체의 경우, 속성을 추가하거나 삭제할 수 있다.
scope는 변수의 값(변수에 담긴 값)을 찾을 때 확인하는 곳
함수 표현식과 함수 선언식의 차이
함수 선언식을 어디에서나 가져다 쓸 수 있다. 하지만 함수 표현식은 어디에서나 쓸 수는 없다.
function funcDeclared() { return 'this is a function declaration'; } // 함수 선언식이다! 쉽게 말해 function 함수이름() {} funcExpressed = function () { return 'this is a function expression'; }; // 함수 표현식이다! 함수이름 = function() {}
함수 표현식을 화살표 함수로 변경하기
const minus = function(x, y) { return x - y } // 이것은 함수 표현식! const minus = (x, y) => { // 1. 우선 function 키워드를 생략하고 화살표 =>를 붙인다. return x - y } const minus = (x, y) => x - y // 2. return과 중괄호를 생략한다 . // 단, 함수의 내용이 복잡하다면 2번 항목은 제외하고 const minus = (x, y) => { // 이런 경우라면 화살표 함수의 구조는 보통 화살표를 만드는 것까지 진행. x = x + 2; y = y * 3; return x - y }
obj.length 는 undefined / 빈 배열의 길이는 0
-> 객체의 길이를 구하고 싶으면 Object.keys(obj).length 이것을 이용 !!얕은 복사는 주소값만 복사 / 깊은 복사는 값 자체를 복사
반응형'Topic > JavaScript' 카테고리의 다른 글
클래스를 이용한 모듈화, Prototype, 생성자 함수 (0) 2021.12.13 고차함수, map, filter, reduce (0) 2021.11.30 원시 자료형, 참조 자료형, 스코프, 클로저 (0) 2021.11.24 slice() / splice() / 수도코드의 중요성 / 로직 (0) 2021.11.22 자바스크립트 mutable / immutable (0) 2021.11.22