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

 更新时间:2020年02月17日 17:07:08   作者:h祝h  
在本篇文章里小编给大家分享的是关于javascript中的with语句学习笔记及用法,有需要的朋友们可以学习下。

在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跨域总结与解决办法

    详解JavaScript跨域总结与解决办法

    本篇文章主要介绍了JavaScript跨域,详细的总结了什么是跨域,并介绍了几种解决办法,感兴趣的小伙伴们可以参考一下。
    2016-10-10
  • 通过原生JS实现为元素添加事件的方法

    通过原生JS实现为元素添加事件的方法

    下面小编就为大家带来一篇通过原生JS实现为元素添加事件的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • javascript中的取反再取反~~没有意义

    javascript中的取反再取反~~没有意义

    操作符~, 是按位取反的意思,表面上~~(取反再取反)没有意义,下面有个不错的示例,大家可以参考下
    2014-04-04
  • html+css+js实现canvas跟随鼠标的小圆特效源码

    html+css+js实现canvas跟随鼠标的小圆特效源码

    这篇文章主要介绍了html+css+js实现canvas跟随鼠标的小圆特效源码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • webpack 打包后图片加载报错的解决办法

    webpack 打包后图片加载报错的解决办法

    使用webpack打包后,图片没有加载出来,页面空白,报错图片引用的路径不对,本文给大家介绍webpack 打包后图片加载报错的解决办法,感兴趣的朋友一起看看吧
    2024-03-03
  • js实现文字在按钮上滚动的方法

    js实现文字在按钮上滚动的方法

    这篇文章主要介绍了js实现文字在按钮上滚动的方法,涉及javascript动态定时操作页面元素样式的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • js数组如何添加json数据及js数组与json的区别

    js数组如何添加json数据及js数组与json的区别

    在JSON中,有两种数据结构:对象和数组。本篇文章给大家介绍js数组如何添加json数据以及js数组和json的区别,涉及到js json数组添加相关知识,感兴趣的朋友可以参考下本篇文章
    2015-10-10
  • JS使用new操作符创建对象的方法分析

    JS使用new操作符创建对象的方法分析

    这篇文章主要介绍了JS使用new操作符创建对象的方法,结合实例形式分析了javascript面向对象程序设计类的定义、new操作符对象的创建及相关操作注意事项,需要的朋友可以参考下
    2019-05-05
  • 基于javascript数组实现图片轮播

    基于javascript数组实现图片轮播

    这篇文章主要为大家详细介绍了基于javascript数组实现图片轮播的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • 纯js实现倒计时功能

    纯js实现倒计时功能

    本文主要介绍了通过js实现页面的倒计时功能的思路与方法,具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01

最新评论