javascript中的with语句学习笔记及用法


Posted in Javascript onFebruary 17, 2020

在JS中,with 语句的作用是将代码的作用域设置到一个特定的对象中。其语法如下:with (expression) statement;

定义 with 语句的目的主要是为了简化多次编写同一个对象的工作,如下面的代码:

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

上面几行代码都包含 location 对象。如果使用 with 语句,可以把上面的代码改写成如下所示:

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

下面的代码使用 with 语句关联了 location 对象。这意味着在 with 语句的代码块内部,每个变量首先被认为是一个局部变量,而如果在局部环境中找不到该变量的定义,就会查询

location 对象中是否有同名的属性。如果发现了同名属性,则以 location 对象属性的值作为变量的值。

大量使用with非常耗性能,而且在严格模式下使用with语句会报错。所以建议没什么 必要不要用with语句

实例扩充

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>With语句(类似于VB中的)</title>
<script type="text/javascript">
 function Student(name, age) {
  this.name = name;
  this.age = age;
 }
 var stu = new Student('罗纳尔多', 36);
 with (stu) {
  //With语句(类似于VB中的),用于简化代码
  alert("Name:" + name + ",Age:" + age);
 }
</script>
</head>
<body>
</body>
</html>

以上就是三水点靠木小编整理分享的全部知识点内容,感谢大家的支持。

Javascript 相关文章推荐
脚本吧 - 幻宇工作室用到js,超强推荐expand.js
Dec 23 Javascript
使用angular写一个hello world
Jan 23 Javascript
Javascript实现网络监测的方法
Jul 31 Javascript
js图片翻书效果代码分享
Aug 20 Javascript
深入浅析JavaScript中prototype和proto的关系
Nov 15 Javascript
如何使用Bootstrap的modal组件自定义alert,confirm和modal对话框
Mar 01 Javascript
AngularJS控制器继承自另一控制器
May 09 Javascript
总结Javascript中数组各种去重的方法
Oct 04 Javascript
React-Native中props具体使用详解
Sep 04 Javascript
JS实现按钮添加背景音乐示例代码
Oct 17 Javascript
Vue拖拽组件列表实现动态页面配置功能
Jun 17 Javascript
Vue+Spring Boot简单用户登录(附Demo)
Nov 12 Javascript
JS实现百度搜索框关键字推荐
Feb 17 #Javascript
js实现百度淘宝搜索功能
Feb 17 #Javascript
JavaScript使用canvas绘制随机验证码
Feb 17 #Javascript
JavaScript中this的学习笔记及用法整理
Feb 17 #Javascript
Vue 中使用 typescript的方法详解
Feb 17 #Javascript
vue框架中props的typescript用法详解
Feb 17 #Javascript
JS通用方法触发点击事件代码实例
Feb 17 #Javascript
You might like
提升PHP执行速度全攻略(下)
2006/10/09 PHP
PHP的一个完美GIF等比缩放类,附带去除缩放黑背景
2014/04/01 PHP
php+mysql数据库查询实例
2015/01/21 PHP
用javascript实现计算两个日期的间隔天数
2007/08/14 Javascript
JS是否可以跨文件同时控制多个iframe页面的应用技巧
2007/12/16 Javascript
javascript 二维数组的实现与应用
2010/03/16 Javascript
javascript date格式化示例
2013/09/25 Javascript
js获取时间并实现字符串和时间戳之间的转换
2015/01/05 Javascript
ExpressJS入门实例
2015/01/14 Javascript
15款jQuery分布引导插件分享
2015/02/04 Javascript
如何在Linux上安装Node.js
2016/04/01 Javascript
第三章之Bootstrap 表格与按钮功能
2016/04/25 Javascript
全面解析Bootstrap表单样式的使用
2016/09/09 Javascript
javascript中setAttribute兼容性用法分析
2016/12/12 Javascript
详解Vue监听数据变化原理
2017/03/08 Javascript
使用webpack-dev-server处理跨域请求的方法
2018/04/18 Javascript
VUE2.0+ElementUI2.0表格el-table实现表头扩展el-tooltip
2018/11/30 Javascript
Vue使用富文本编辑器Vue-Quill-Editor(含图片自定义上传服务、清除复制粘贴样式等)
2020/05/15 Javascript
vue页面引入three.js实现3d动画场景操作
2020/08/10 Javascript
[10:04]国际邀请赛采访专栏:DK.Farseer,mouz.Black^,采访员Josh专访
2013/08/05 DOTA
python实现备份目录的方法
2015/08/03 Python
详解使用pymysql在python中对mysql的增删改查操作(综合)
2017/01/18 Python
Python字典遍历操作实例小结
2019/03/05 Python
python之pyqt5通过按钮改变Label的背景颜色方法
2019/06/13 Python
Centos7 下安装最新的python3.8
2019/10/28 Python
浅谈python3打包与拆包在函数的应用详解
2020/05/02 Python
Python 添加文件注释和函数注释操作
2020/08/09 Python
详解使用Python写一个向数据库填充数据的小工具(推荐)
2020/09/11 Python
俄罗斯玩具、儿童用品、儿童服装和鞋子网上商店:MyToys.ru
2019/10/14 全球购物
洗煤厂厂长岗位职责
2014/01/03 职场文书
元旦文艺汇演主持词
2014/03/26 职场文书
幼儿园标语大全
2014/06/19 职场文书
2014年幼儿园教学工作总结
2014/12/04 职场文书
实习推荐信格式模板
2015/03/27 职场文书
话题作文之学会尊重
2019/12/16 职场文书
JavaScript实现贪吃蛇游戏
2021/06/16 Javascript