object

박진·2021년 2월 15일
0

javascript를 공부하면서 진짜 헷갈리는것중 하나가 object 였고, 매개변수이다.

너무 이상해서 헷갈리지만 너무너무 중요하기에 기록해본다.

function print(person){
	console.log(person.name);
    console.log(person.age);
}

const jin = {
	name: "jin",
    age:  99
 };
 print(jin);   

이게 오브젝트인데 오브젝트를 만드는방법은 두가지가있는데,

const obj1 = {}; //object literal
const obj2 = new Object(); //object constructor

근데 자바스립트는 동적으로 타입이 runtime때 결정되서 갑자기 object가 선언되었음에도 불구하고 jin.job = true; 이렇게 추가 및 삭제할수있다. delete jin.job;

하지만 오류가 생길수있으므로 하지말자.

접근법

오브젝트에 접근하는법은

console.log(jin.name); //코딩할때 사용
console.log(jin[`name`]); //computed properties (key값), 우리가 필요한 키값을 불러올떄 사용

//ex

function value(obj, key) {
	console.log(obj[key]);
}
value(jin, 'name');
value(jin, 'age');

이렇게 두개가 가능하다.

오브젝트 쉽게 설정

const fruit1 = {name : banana, from : Brazil};
const fruit2 = {name : apple, from : korea};
const fruit3 = {name : lemon, from : america};

//이걸 쉽게

function Fruit(name, from){
	this.name = name,
    this.from = from;
}

//호출시
const fruit4 = Fruit('melon', singapole);
//or
const fruit4 = new Fruit('melon', singapole);

꿀팁* 오브젝트안에 있는 값을 찾을때, In이라는 키를써서 찾을수있다.

console.log('name' in Fruit);

for (key in obj) 와 for(key of obj)도있는데,

for in = 모든키를 받아와 쓸때
for of = 배열 리스트를 쓸때 순차적으로 (숫자같은)

for(key in jin)  {
	console.log(key) //key값을 받을때;
}
const array = [1,2,3,4];
for(value of array)  {
	console.log(value) //key값을 받을때;
}

오브젝트 복사

오브젝트를 쉽게 할수있다.

//첫번째 방법.
const user = {name:'kim', age:20};
const user2 = user;

//두번째 방법
Object.assign(user3, user);
const user4 = Object.assign({}, user);

간편해진다. 자기가 맘에드는걸루 쓰자.

profile
Hello :)

0개의 댓글