javascript

자바스크립트 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..
· javascript
call(),apply(),bind()를 무엇인가를 알아보기 전에 이 메소드들을 왜 사용하고 어떠한 상황에서 사용해야 하는지 아는것이 중요합니다. 그래야 3가지 중에 골라 쓸 수 있잖아요~ 엄청 간단합니다. 함수내부에서 this가 어디를 참조하고 있는지 생각하시면 됩니다. 이 3가지 메소드가 함수내부에서의 this를 제어해주는 역할을 하고 있거든요. why? 먼저 일반적인 함수에서 this가 무엇을 참조하는 지 확인해봅시다 함수를 호출했더니 this가 window를 가르키고있습니다. 당연한 결과죠 객체를 따로 지정해주지 않았으니까 전역객체인 window를 가르키는거겠죠 그럼 객체안에서 메소드 함수는 어떻게 동작하는지 볼까요? obj객체 내의 test함수를 호출했더니 this가 test함수를 실행시키고 있..
· javascript
reduce 메소드는 배열 각 요소를 돌면서 새로운 하나의 결과값을 반환합니다. 아..!일단 배열의 원소들을 순회하고 무언가의 새로운 값을 반환하는구나..라고 생각하시고 예제들을 살펴볼게요 ~~ reduce 에는 콜백함수와 초깃값이 있어요콜백함수에서 4개의 매개변수를 사용할 수 있고 초깃값을 비워넣거나 설정해놓을 수 있죠유심히 봐주시길 바랍니다 (중요중요) 배열.reduce(function(누적값, 현잿값, 인덱스, 요소) { return 결과 }, 초깃값); 1.누적값 (accumulator) return 값을 누적합니다.초깃값을 제공한 경우에는 초기값의 값으로 시작합니다. 2.현재값 (currentValue) 배열에 현재 요소 입니다 3.인덱스 (currentIndex)현재 요소의 인덱스 입니다. 초..
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가 맨 상단위로 올라갑니다.그..
· javascript
자바스크립트에서 호이스팅한다 뭐 요런말 들어보셨을텐데요 자바스크립트에서 호이스팅은 끌어올린다는 뜻입니다. 뭘끌어올리느냐 바로 변수선언과 함수선언을 최상단으로 끌어올립니다 확인해봅시다 1.변수선언 console.log(a) var a; 콘솔에 찍으면 에러가 아니라 undefined 가 나옵니다 변수가 호이스팅 됬기 때문이죠 *실제로 호이스팅된 코드 var a; console.log(a) 자바스크립트는 이렇게 읽은 거죠 이렇게 변수를 함수 바깥에서 선언한 경우에는 전역컨테스트 최상위로 끌어올립니다. 그럼 함수 내에서 선언해볼까요 ?? function test(){ console.log(a) var a = 'b'; } console.log(test(),a) //undefined , referenceError ..
· javascript
자바스크립트에서 데이터 종류는 2가지로 나눕니다. 기본형(원시형) primitive type : null,undefined, string, boolean , number 참조형 reference type : object(array,function,regExp) 기본형 var a ; 변수를 선언하면 컴퓨터는 변수 a 의 메모리주소값을 확보합니다. 마치 방을 주는 것처럼요 주소값을 방으로 비유하겠슴다 컴퓨터 : 엇 변수 a .. 너는 10000번 방을 줄게 a에게 10000방을 줬으니 a는 주소값이 10000입니다. a = 3; 변수 a 에게 값을 할당하면? a가 10000번방에 있으니 10000번방을 찾아가서 3을 할당하죠 이렇게 기본형 데이터는 값을 그대로 할당시킵니다. 직진! 참조형 참조형데이터는 객체..
안녕하세요 이번 포스팅은 Set() & WeakSet() 에 알아보겠슴다공부하다 좀 헷갈리고 어려운 부분이 있어서,,이해하기 쉽게,,정리를 좀 해보려고 해요그럼 공부해보아요!😝 1. Set() 중복이 허용되지 않는 데이터 집합 입니다.iterable 한 특징을 가지고 있죠. ( * 값을 하나씩 순차적으로 접근이 가능하다 => 반복가능한객체 ) const set = new Set() - 속성
안녕하세요 구조분해할당에 대해 포스팅해볼게요 😁 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..
이챙(leechaeng)
'javascript' 태그의 글 목록