美文网首页
3.6.9 with 语句

3.6.9 with 语句

作者: Wuthier | 来源:发表于2021-04-26 17:03 被阅读0次
3.6.9 with 语句

with语句的用途是将代码作用域设置为特定的对象。

使用with语句的主要场景是针对一个对象反复操作,这时候将代码作用域设置为该对象能提供便利。

let qs = location.search.substring(1);
let hostName = location.hostname;
let url = location.href;

上面代码中的每一行都用到了location对象。如果使用with语句,就可以少写一些代码:

with(location) {
    let qs = search.substring(1);
    let hostName = hostname;
    let url = href;
}

这里,with语句用于连接location对象。这意味着在这个语句内部,每个变量首先会被认为是一个局部变量。如果没有找到该局部变量,则会搜索location对象,看它是否有一个同名的属性。如果有,则该变量会被求值为location对象的属性。

严格模式不允许使用with,否则会抛出错误。

由于with语句影响性能且难于调试其中的代码,通常不推荐在产品代码中国使用with语句。

学习下一篇文章

相关文章

网友评论

      本文标题:3.6.9 with 语句

      本文链接:https://www.haomeiwen.com/subject/zfaglltx.html