본문 바로가기

JavaScript7

Symbol property key 문자형 const obj = { 1 : '1입니다', false : ' 거짓' } Object.keys(obj); obj['1'] // "1 입니다." obj['false']// "거짓" Symbol은 유일성이 보장된다. const a = Symbol(); const b = Symbol(); a === b; false a == b ; false // 다른 개발자가 만들어놓은 객체 const user = { name : 'Kim', age : 30 }; //내가 작업 // user.showName = function () {}; const showName = Symbol("show name"); user[showName] = function() { console.log(this.na.. 2023. 7. 31.
객체 메소드, 계산된 프로퍼티 계산된 프로퍼티 computed property let a = 'age'; const user = { name : 'Kim' [a] : 30 //age : 30 } const user = { [1 + 4] : 5, ["안녕" + "하세요"] : "Hello" } user 호출시 {5: 5, 안녕하세요: "Hello"} Obejct.assign() 객체 복제 const newUser = Object.assign(초기값 {}, 복사할객체 user); {} + { name : 'Kim', age: 30} { name : 'Kim', age : 30, } Object.assign( {gender: 'male'}, user ) { gender : 'male', name : 'Kim', age : 26 } 병합할때.. 2023. 7. 31.
생성자 함수 생성자 함수(constructor function)와 일반 함수에 특별한 차이는 없다. 하지만 생성자 함수는 함수 이름의 첫 글자는 반드시 대문자로 시작해야하며 실행할때는 new를 붙여서 실행하여야 한다. function User(name,age){ this.name = name; this.age = age; } let user5 = new User('Han', 40); function User(name,age){ this.name = name; this.age = age; this.sayName = () -> { console.log(this.name); } } let user6 = new User('Kim', 26); user5.sayName(); // 'Kim' 프린트 2023. 7. 31.