window
特別なグローバルスコープをカスタム スコープと交換する可能性はありますか? 意図されていると思っwith
ただけですが、別の「ルックアップ」スコープをスタックするだけです。例えば。
test={};
with(test){
a=1;
}
プロパティを作成しませんtest.a
が、window.a
.
window
オブジェクトには、独自のコードでは再現できない JS 固有の特別な品質がありますか?
window
特別なグローバルスコープをカスタム スコープと交換する可能性はありますか? 意図されていると思っwith
ただけですが、別の「ルックアップ」スコープをスタックするだけです。例えば。
test={};
with(test){
a=1;
}
プロパティを作成しませんtest.a
が、window.a
.
window
オブジェクトには、独自のコードでは再現できない JS 固有の特別な品質がありますか?
指定されたオブジェクトにプロパティが存在する場合、プロパティはwith
変更されますが、作成されることはありません。これは、使用に関する主要な「落とし穴」でwith
あり、避けるべき主な理由です。
with
渡されたオブジェクトにそのプロパティがある場合にのみ、変更されます。作成されません。
http://www.yuiblog.com/blog/2006/04/11/with-statement-considered-harmful/