//Literals and Properties
const obj1 = {}; //object literal
const obj2 = new Object(); //object constructor
function print(person) {
console.log(person.name);
console.log(person.age);
}
const kys = {name:'kys', age:4}; //object
print(kys);
kys.hasJob = true; //가능은 하지만 좋지 않은 코드
console.log(kys.hasJob);
//Computed properties
//Computed properties
console.log(kys.name); //코딩하는 순간 값을 받아올때
console.log(kys['name']); //키는 string 타입으로 가여좌야 한다.
kys['hasJob'] = true; //실시간으로 원하는 값을 가져오고 싶을때
console.log(kys.hasJob);
function printValue(obj, key) {
console.log(obj[key]); //이럴때는 .으로 값을 가져올 수 없다.
}
printValue(kys,'name');
//Property value shorthand
//Property value shorthand
const person1 = {name:'bob', age:2};
const person2 = {name:'steve', age:3};
const person3 = {name:'dave', age:4};
const person4 = makePerson('KYS',30);
function makePerson(name, age) {
return {
name,
age,
};
}
//Constructor Function
function Person(name,age) {
this.name=name;
this.age=age;
}
//inoperator
//inoperator 키가 있는지 없는지 확인
console.log('name' in KYS); //true
console.log('age' in KYS); //true
//Fun cloning
//Fun cloning
const user = {name: 'KYS',age:20};
const user2 = user;
user2.name = 'coder'; //KYS -> coder로 변경됨
console.log(user);
const user4={}; //빈 배열에 추가하기 assign
Object.assign(user4, user);
console.log()
//another example
//another example
const fruit1 = {color:'red'};
const fruit2 = {color:'blue', size: 'big'};
const mixed = Object.assign({}, fruit1, fruit2);
console.log(mixed.color); //blue
console.log(mixed.size); //big
'JavaScript' 카테고리의 다른 글
HTML in JS (0) | 2021.12.22 |
---|---|
배열 (0) | 2021.12.20 |
class, object (0) | 2021.12.20 |
js 데이터타입 (0) | 2021.12.08 |
정규 표현식 (0) | 2021.10.25 |