객체
참고 강의
코딩앙마님의 유튜브 강의를 듣고 공부 내용을 정리한 것입니다.
객체 리터럴?
let user = {
name : 'Mike',
age : 30,
}
function User(name, age) {
this.name = name;
this.age = age;
this.sayName = function() {
console.log(this.name);
}
}
let user1 = new User('Mike', 30);
let user2 = new User('Jane', 22);
let user3 = new User('Tom', 17);
let user5 = new User('Han', 40);
user5.sayName();
Computed property
let a = 'age';
const user = {
name : 'Mike',
[a] : 30
}
const user = {
[1 + 4] : 5,
['안녕'+'하세요'] : 'Hello'
}
let n = "name";
let a = "age";
const user = {
[n] : "mike",
[a] : 30
}
function makeObj(key, val) {
return {
[key] : val
}
}
const obj = makeObj("나이", 33);
Methods
Object.assign()
const user = {
name : 'Mike',
age : 30
}
// 참조값이 복사되어 들어감
// 하나의 객체를 constUser, user 변수로 접근
const cloneUser = user;
// 값을 복사하고 싶을 때
const newUser = Object.assgin({}, user);
newUser.name = 'Tom';
newUser != user
Object.assign({ gender : 'male'}, user);
Object.assign({name : 'Tom'}, user);
Object.assign(user, info1, info2);
// user <- info1, user <- info2
Object.keys()
const user = {
name : 'Mike',
age : 30,
gender : 'male'
}
Object.keys(user);
// ['name', 'age', 'gender']
Object.values()
Object.values(user);
// ['Mike', 30, 'male']
Object.entries()
Object.entries(user);
// ['name', 'mike'], ['age', 30], ['gender', 'male']
Object.fromEntries()
const userArr = [
["name", "mike"],
["age", 30],
["gender", "male"]
];
Object.fromEntries(userArr);
// { name : "mike", age : 30, gender : "male" }