[JS] with문

K00·2022년 10월 13일
0
post-thumbnail

❌ strict mode에서 오류로 판단한다.

mdn문서를 보다가 처음보는 구문 with문을 보았다.
문서에 사용을 권장하지 않고 있다지만 궁금했기에 사용해보았다.

사용목적

반복된 동일한 객체의 요소들에 접근할때 반복되는 부모 객체를 적는것을
축약 하기 위해서 사용한다.

with(반복될 객체){
    뒤에 오게될 메서드 또는 객체요소
}

예제1

    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;
            }
          }
        }
      }
    }

예제2

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)
}

0개의 댓글