반응형

언어 Language/자바스크립트 Javascript 3

Q. var와 let의 가장 큰 차이는? var보다 let을 써야 하는 이유는?

A1. let은 let을 선언한 블록과 그 하위 블록을 스코프로 가진다. var는 var 선언을 포함한 함수까지 스코프로 가진다. 참고: MDN Web Docs let function varTest() { var x = 1; if (true) { var x = 2; // 같은 변수! console.log(x); // 2 } console.log(x); // 2 } function letTest() { let x = 1; if (true) { let x = 2; // 다른 변수 console.log(x); // 2 } console.log(x); // 1 } 코드 출처: MDN Web Docs let 위 예제가 let과 var의 차이를 보여준다. var로 변수를 선언할 경우 보통 의도하지 않은 결과가 나타..

Javascript set을 사용해서 배열 안에 있는 객체의 중복도 없앨 수 있을까?

그냥 Set을 사용해서는 안 된다. 배열 안에 객체가 없는 경우에는 중복을 없앨 수 있지만, 배열 안에 객체가 있는 경우에는 중복을 없앨 수 있다. 따로 함수를 만들어줘야 한다. let arr1 = ['a', 'a', 'b']; let p1 = {name: 'Peter', age: 21}; let p2 = {name: 'James', age: 23}; let p3 = {name: 'James', age: 23}; let arr2 = [p1, p2, p3]; let set1 = new Set([...arr1]); let set2 = new Set([...arr2]); console.log("arr1:", arr1); console.log("arr2:", arr2); console.log("set1:", s..

자바스크립트 프로그래밍 스타일, 코딩 컨벤션 조사

W3Schools 설명 (참고: www.w3schools.com/js/js_conventions.asp) 변수명은 낙타표기법 camelCase으로 예) firstName = "John"; 연산자 앞뒤로 한칸 띄우기 예) var x = y + z; 코드 블럭 안에는 2칸 띄우기 예) function sum(a, b) { return a + b; } 모든 구문 끝은 세미콜론; var values = ["Volvo", "Fiat"]; 이름 짓는 방법Naming Conventions 변수와 함수명은 낙타표기법으로. camelCase 전역변수는 대문자로. UPPER CASE 상수도 대문자로. 예) PI Underscores 방식은 주로 SQL 데이터베이스에서 사용 예) date_of_birth camelCase ..

반응형