mdn문서를 보다가 처음보는 구문 with문을 보았다.
문서에 사용을 권장하지 않고 있다지만 궁금했기에 사용해보았다.
반복된 동일한 객체의 요소들에 접근할때 반복되는 부모 객체를 적는것을
축약 하기 위해서 사용한다.
with(반복될 객체){
뒤에 오게될 메서드 또는 객체요소
}
function allCheck() {
with (document.frm) { //<-반복되는 객체를 적고
console.log(all.checked); //<-앞의 객체를 생략해서 사용 할 수 있다 .
if (all.checked) {
for (let i = 0; i < frm.length; i++) {
if (elements[i].type == "checkbox") {
elements[i].checked = true;
}
}
} else {
for (let i = 0; i < frm.length; i++) {
if (elements[i].type == "checkbox") {
elements[i].checked = false;
}
}
}
}
}
BEFORE
x = Math.cos(3 * Math.PI) + Math.sin(Math.LN10)
y = Math.tan(14 * Math.E)
AFTER
with (Math){
x = cos(3 * PI) + sin (LN10)
y = tan(14 * E)
}