자바스크립트

    모던 자바스크립트, 심볼 (Symbol)

    Symbol 이란? ES2015 에서 추가된 7번째 타입으로 원시 데이터 타입(primitive data type)이다. 전까지는 Boolean, null, undefined, Number, String, Object 가 있었다. 익명의 오브젝트 프로퍼티를 만드는데 이용된다. 이름 충돌이 없는 유일한 객체 프로퍼티를 만든다. 프로퍼티를 의도치 않은 노출로부터 보호한다. 자바스크립트 빌트인 객체에 이미 많이 쓰이고 있다. 이는 심볼을 이용해 빌트인 객체를 확장해서 쓰라는 의도도 있다. Symbol 추가가 갖는 의의 왜 굳이 고유한 객체의 키값이 필요할까? 문자열로 하면 안되는 걸까? 자바스크립트 언어 스펙을 정하는 사람들은 새로운 속성이나 메서드를 추가할 때 "다른 개발자들이 이미 쓰고있는 이름은 아닐까?..

    JS 에서 오브젝트를 만드는 방법을 아는대로 말해보세요.

    1. Object 생성자 let object = new Object();다만 퍼포먼스도 안좋고, Object 를 오버라이드하는 경우 예상치 못한 결과가 나올 수 있으니 사용하지 않는 게 좋다. Object lietral notation 이라 불리는 {} 를 사용하는 게 훨씬 퍼포먼스도 좋고 코드도 깔끔하다. 2. Object.create() 메서드 const person = { isHuman: false, printIntroduction: function () { console.log(`My name is ${this.name}. Am I human? ${this.isHuman}`); }, }; const me = Object.create(person); me.name = "Matthew"; // "na..

반응형