【Vue】Vue中render函数用到的with,this中with的用法及其优缺点

  with的语法结构为:  

with(object) {
    /* 语句 */
  }

  with主要是用来对对象取值的, 如下 所示:   

with(obj) {
    var newa = a;
    var newb = b;
    console.log(newa+newb);
  }

  该语句 等价于:  

var newa = obj.a;
var newb = obj.b;
console.log(newa+newb);

  with的 优点:

  当with传入的值非常复杂时,即当object为非常复杂的嵌套结构时,with就使得代码显得非常简洁。

  with的缺点:

  js的编译器会检测with块中的变量是否属于with传入的对象, 上述例子为例,js会检测a和b是否属于obj对象,这样就会的导致with语句的执行速度大大下降,性能比较差。

尤大的回答:https://www.zhihu.com/question/49929356?sort=created