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 相关文章推荐
JQuery解析HTML、JSON和XML实例详解
Mar 29 Javascript
ie 7/8不支持trim的属性的解决方案
May 23 Javascript
jQuery实现的fixedMenu下拉菜单效果代码
Aug 24 Javascript
聊一聊JS中this的指向问题
Jun 17 Javascript
canvas的神奇用法
Feb 03 Javascript
详解Javascript几种跨域方式总结
Feb 27 Javascript
vue 实现 tomato timer(蕃茄钟)实例讲解
Jul 24 Javascript
JavaScript适配器模式详解
Oct 19 Javascript
VUE实现可随意拖动的弹窗组件
Sep 25 Javascript
vue3修改link标签默认icon无效问题详解
Oct 09 Javascript
js中的面向对象之对象常见创建方法详解
Dec 16 Javascript
ES6 proxy和reflect的使用方法与应用实例分析
Feb 15 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 显示指定路径下的图片
2009/10/29 PHP
一个php短网址的生成代码(仿微博短网址)
2014/05/07 PHP
php按字符无乱码截取中文的方法
2015/03/27 PHP
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
汉化英文版的Dreamweaver CS5并自动提示jquery
2010/11/25 Javascript
JS onmousemove鼠标移动坐标接龙DIV效果实例
2013/12/16 Javascript
jQuery中验证表单提交方式及序列化表单内容的实现
2014/01/06 Javascript
javascript实现随机读取数组的方法
2015/08/03 Javascript
javascript实现日期时间动态显示示例代码
2015/09/08 Javascript
JS常用倒计时代码实例总结
2017/02/07 Javascript
AngularJS获取json数据的方法详解
2017/05/27 Javascript
Angularjs自定义指令实现分页插件(DEMO)
2017/09/16 Javascript
Node.js+Vue脚手架环境搭建的方法步骤
2020/03/08 Javascript
如何在node环境实现“get数据解析”代码实例
2020/07/03 Javascript
Element Backtop回到顶部的具体使用
2020/07/27 Javascript
JS实现小米轮播图
2020/09/21 Javascript
Python实现字符串反转的常用方法分析【4种方法】
2017/09/30 Python
Python 3.7新功能之dataclass装饰器详解
2018/04/21 Python
Django项目中用JS实现加载子页面并传值的方法
2018/05/28 Python
使用Python对微信好友进行数据分析
2018/06/27 Python
Python的log日志功能及设置方法
2019/07/11 Python
calendar在python3时间中常用函数举例详解
2020/11/18 Python
美国豪华时尚女性精品店:Kirna Zabête
2018/01/11 全球购物
人力管理专业毕业生求职信
2014/02/27 职场文书
房地产活动策划方案
2014/05/14 职场文书
企业文化标语口号
2014/06/09 职场文书
中秋晚会活动方案
2014/08/31 职场文书
党员干部反四风民主生活会对照检查材料思想汇报
2014/10/12 职场文书
2015年幼儿园教研活动总结
2015/03/25 职场文书
会议主持词开场白
2015/05/28 职场文书
运动会宣传稿50字
2015/07/23 职场文书
公司开业致辞
2015/07/29 职场文书
正确的理解和使用Django信号(Signals)
2021/04/14 Python
Pandas搭配lambda组合使用详解
2022/01/22 Python
MySQL事务的隔离级别详情
2022/07/15 MySQL
vue实现简易音乐播放器
2022/08/14 Vue.js