with ステートメントを定義する目的は、主に、同じオブジェクトを複数回記述する作業を簡略化することです
with ステートメントは、スコープ チェーンの先頭にオブジェクトを追加し、ステートメントを実行し、最後にスコープ チェーンを復元します元の状態に戻す
with(object){ statement; }
Function
オブジェクトが深くネストされている場合、コードの記述を簡素化するために通常 with ステートメントが使用されます。基本的に、新しい字句スコープは、オブジェクトの参照をスコープとして扱い、オブジェクトのプロパティをスコープ内の識別子として扱うことによって作成されます。クライアント側の JavaScript では、次のような式を使用して HTML 内の要素にアクセスできます。 form
document.forms[0].address.value
with(document.forms[0]){ name.value = ''; address.value = ''; emai.value = ''; }
オブジェクト o が属性 x を持つ場合、次のコードはこのプロパティに値 1 を割り当てます
var o = {x:0}; with(o) x = 1; console.log(o.x);//1
var o = {}; with(o) x = 1; console.log(o.x);//undefined console.log(x);//1
Strictモード
strictモードではwith文の使用は禁止されています
var x = 1; var o = {}; with(o){ x = 2; } console.log(x);//2 console.log(o.x);//undefined
以上がJavaScriptのwith文の機能と副作用を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。