ITPub博客

首页 > IT职业 > IT图书 > js中with语句的用法及其作用

js中with语句的用法及其作用

IT图书 作者:zhjjj 时间:2021-09-09 09:52:07 0 删除 编辑

申明:本文是js系列笔记之一,有不正确的地方请尽管指出,大家相互学习,共同进步;

前两天读《javascript高级程序设计》一书,遇到with一词;之前尽全然不知,没用过,,丢人了。所以细细读了一番,,书中强调其作用是,延长作用域链;不熟悉的人可能听起来有点怪,ok,看下他是怎么延长作用域链的 

图片描述

一切文字解释都是那么苍白无力

在with这个块中你可以直接使用People中的属性,所以对于延长作用域链我是这么理解的 ,在yanChang这个局部作用域中,又多了一级----with中的作用域。但有一个特点是,with块中可以直接访问People的一级属性;

所以省去了我们用 . 访问对象属性的这种作法;所以就我而言,我更认为这是延长作用域和释放变量;

但是到目前为止我还没有找到js中使用with语句好处的更佳答案,倒是有一些值得吐槽的地方,比如频繁的使用with,其()中的变量有特别多的属性,那么在该with块中,浏览器要一遍一遍的去遍历该变量,验证是否有这个属性,所以使用多了会不会对性能造成一定的损失?

如下大概是对with的正确用法?但是却没有人这么写css的!

图片描述

这么写css你见过吗?

所以很多人在js文章中并不提倡使用with语句。



作者:XBGG
链接:https://www.jianshu.com/p/12d569b6081b


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/717/viewspace-2813730/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-04-12

  • 博文量
    231
  • 访问量
    1889