javascript/es6(8)
-
화살표 함수(arrowFunction)와 일반함수(function)의 차이점 알아보기
자바스크립트에서 일반함수와 화살표함수 두가지의 함수가 있다. 이 두 함수는 기능이 다르다. 차이점을 알아보자 ⭐1. this 1) 일반함수 - 일반적으로 함수를 호출할 경우 global 객체를 가리킨다(기본적으로 window 객체) function func1() { console.log(this); } func1(); // window object - 메소드함수를 호출할 경우 메소드를 소유한 객체를 가리킨다 const obj = { name:'공작새', method() { console.log(this.name); // 공작새 } }; this가 obj객체 이기때문에 method() 호출시 obj.name의 값이 콘솔에 찍힌다 - 생성자를 호출할 경우 새 인스턴스를 가리킨다 function funcFac..
2022.06.16 -
[es6] Symbol 이란 ..? 자세히 알아보자
자바스크립트 es6 에서 Symbol 이라는 원시 데이터 유형을 추가하였습니다 자바스크립트에는 밑에와 같은 원시데이터를 가지고있죠 1.Boolean 2.Null 3.Undefined 4.Number 5.String 6.Symbol +new Symbol() Symbol([description]) Symbol은 고유한 데이터입니다. 여러개의 Symbol에 동일한 description을 넣어도 각 다른 존재로 인식됩니다. const a = Symbol("id"); const b = Symbol("id"); console.log(a == b); // false 같은 문자열을 넣었는데 결과 값이 false 로 나오죠? Symbol은 고유한 존재 이기 때문에 문자열이 같아도 영향을 미치지 않습니다 Object ke..
2021.03.21 -
TDZ(Temporal Dead Zone) 란..? TDZ로 인한 var,let,const 알아보기
TDZ(Temporal Dead Zone) 변수를 선언 하기 전의 범위를 TDZ에 있다고 합니다.변수 선언 전에 변수를 호출 할경우 reference error 가 발생하는데 이때 tdz 에 걸렸다고 표현하죠 자세하게 알아봅시당 (function test(){ console.log(a); //TDZ let a; }()) 변수 a 를 선언하기 전 콘솔에 찍었더니 reference error 가 뜨죠?지금 저 구간이 TDZ인 상태이기 때문이에요선언되지 않은 변수에 접근 하려고 하니 에러가 발생하는 겁니다. 그럼 var 변수는 어떨까요 (function test(){ console.log(a); var a; }()) undefined가 나옵니다var 의 경우에는 호이스팅 되면서 a가 맨 상단위로 올라갑니다.그..
2020.12.11 -
[es6]Set(),WeakSet(),set 메소드,set 으로 중복없는 배열 만들기, set 배열로 만들기
안녕하세요 이번 포스팅은 Set() & WeakSet() 에 알아보겠슴다공부하다 좀 헷갈리고 어려운 부분이 있어서,,이해하기 쉽게,,정리를 좀 해보려고 해요그럼 공부해보아요!😝 1. Set() 중복이 허용되지 않는 데이터 집합 입니다.iterable 한 특징을 가지고 있죠. ( * 값을 하나씩 순차적으로 접근이 가능하다 => 반복가능한객체 ) const set = new Set() - 속성
2020.08.20 -
[es6] Destructuring assignment 구조분해할당
안녕하세요 구조분해할당에 대해 포스팅해볼게요 😁 MDN에 나와있는 구조분해할당에 대한 설명입니다.배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하는 JavaScript 표현식. 아,,배열이나 객체의 속성을 해체시켜서 그 값을 변수에 담을 수 있구나,,! 라고 이해가 되시지요?함 알아볼까욧! 1.배열분해할당 let data = [10,20,30,40]; let a = data[0]; let b = data[1]; console.log(a,b) 보통 요런식으로 배열의 값을 변수에 대입하죠.콘솔에 10,20 이 찍히겠죠 ?이방법은 뭔가 지저분해보이고,,귀찮습니다. 구조분해 방법으로 사용 해 볼게요 let data = [10,20,30,40]; let [a,b,c] = data consol..
2020.08.12 -
[es6]특정 문자열로 시작하는지 끝나는지 알 수 있는 메서드 startsWith() , endsWith()
es6문법에서 특정문자열이 시작하는지 또는 끝나는지 확인 할 수 있는 메서드가 생겼습니다. startsWith() - 특정문자로 시작하는지 확인하여 결과를 true 또는 false 로 변환 endsWith() - 특정문자로 시작하는지 확인하여 결과를 true 또는 false 로 변환 그럼 간단하게 예제를 통해 공부해보아요startsWith()를 사용하여 사과로 시작하는 배열 값만 콘솔에 찍어볼게요! let arr = ['사과나무','사과맛 과자','홈런볼','사과주스']; for(let text of arr){ if(text.startsWith('사과')){ console.log(text) } } 콘솔에 홈런볼을 제외한 값만 찍혔음을 알 수 있습니다 .
2020.07.31