js-with用法

首先,给出个人的理解: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>

示例结果

原文地址:https://www.cnblogs.com/benchan2015/p/5057314.html