웹 개발 메모장

[자바스크립트] in 키워드 / with 키워드 본문

옛날../자바스크립트

[자바스크립트] in 키워드 / with 키워드

도로롱주 2018. 1. 3. 14:17




in 키워드 / with 키워드




다음과 같은 객체가 있다고 합시다.


1
2
3
4
5
var userinfo = {
    name : 'Kim',
    job : 'student',
    age : 18
};
cs



key in 객체


key객체에 있는 지 여부를 반환합니다. (true / false)


다음의 코드에서 hasNameInfohasSexInfo 는 각각 true false 가 저장됩니다.


1
2
var hasNameInfo  = 'name' in userinfo;
var hasSexInfo  = 'sex' in userinfo;
cs




with (객체) {...}


반복해서 사용해야하는 코드를 좀 짧게 줄여주는 역할을 합니다.


예를 들어 다음과 같은 코드들을


1
2
3
alert(userinfo.name);
alert(userinfo.job);
alert(userinfo.age);
cs


with를 사용해 다음 처럼 줄일 수 있습니다.


1
2
3
4
5
with(userinfo) {
    alert(name);
    alert(job);
    alert(age);
}
cs



변수 이름이 겹칠 경우 userinfo 내의 변수가 우선 시 되며 전역 변수에 접근하고 싶은 경우 window.job 같은 방식으로 접근 가능합니다.



Comments