首先,给出个人的理解:with就是为了封装某个对象,减少某个对象的调用
比如:定义一个对象
var a={},a.name='张三';a.sex='女';
一般的调用方式
console.log(a.name);
console.log(a.sex);
使用with之后的调用
with(a){
console.log(name);
console.log(sex);
}
以下给出示例代码
<div id='div1'>test</div>
<script>
var a = {};
a.aa = 1;
a.bb = 2;
a.cc = 3; with(a) {
console.log(aa);
console.log(bb);
console.log(cc);
} var b = function() { this.a = 111; this.b = 222;
}
b.prototype.test = function(param) { this.a = param;
console.log(this.a)
}; with(new b()) {
test('just for test');
} var div1 = document.getElementById('div1'); with(div1.style) {
width = '200px';
height = '300px';
background = 'red';
color = 'white';
} </script>