博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
with
阅读量:5099 次
发布时间:2019-06-13

本文共 1371 字,大约阅读时间需要 4 分钟。

转载:http://www.2cto.com/kf/201408/329846.html

1初次接触到with用法,是这样一段代码:

function validate_email(field,alerttxt){with (field){  apos=value.indexOf(@);  dotpos=value.lastIndexOf(.);  if (apos<1||dotpos-apos<2)     {     alert(alerttxt);     return false;     }  else {
    return true     }  }}

with对象能够使我们很方便的使用某个对象的一些属性,而不用每次都去写

作用:用于设置代码在特定对象中的作用域。

对象名.属性 的形式,直接使用对象名。

就像上面的代码,field是对象,而value是对象的值。若不是有with,我们应该是field.value的形式来使用属性。使用with去除了多次写

with对象只能使用属性,而不能改变属性。

这里有个很简单的例子:

function Lakers() {         this.name = kobe bryant;         this.age = 28;         this.gender = boy;  }  //使用函数容器创建对象
var people=new Lakers();  with(people)  {         var str = 姓名:  + name  ;         str += 年龄: + age  ;         str += 性别: + gender;         document.write(str);  }

这样使用,会得到结果:

姓名: kobe bryant

年龄:28
性别:boy

2 with方式也可以用来进行样式的赋值。

js进行样式的赋值方法大家可以参考http://blog.sina.com.cn/s/blog_6cbbde3f01018g6z.

其中一种方法是:cssText方法,

var t=document.getElementById(dd);t.style.cssText=width:200px;height:300px;

还可以

with(t.style){width='300px';height='300px';}

补充:

说到作用域链,不得不说with语句。with语句主要用来临时扩展作用域链,将语句中的对象添加到作用域的头部。

看下面代码

person={name:"yhb",age:22,height:175,wife:{name:"lwy",age:21}};with(person.wife){ console.log(name); }

with语句将person.wife添加到当前作用域链的头部,所以输出的就是:“lwy".

with语句结束后,作用域链恢复正常。

 

posted on
2015-09-21 21:45 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/shixiaomiao/p/4827378.html

你可能感兴趣的文章
视图以日期作为条件查询条件时虽显式转换?
查看>>
LintCode: Number of Islands
查看>>
git教程: 创建版本库
查看>>
Webstorm上面通过babel将es6转化为es5
查看>>
黑马程序员 参数化查询避免SQL注入漏洞攻击
查看>>
jzoj100029
查看>>
起底多线程同步锁(iOS)
查看>>
[BZOJ 1951] 古代猪文
查看>>
数据库系统原理——ER图转换成关系模式集的算法
查看>>
SPOJ KPSUM ★(数位DP)
查看>>
Python-requests之POST Data的json问题
查看>>
【Linux高级驱动】网卡驱动分析
查看>>
字符串处理函数
查看>>
jenkins修改时区
查看>>
比较git commit 两个版本之间次数
查看>>
jQuery.support
查看>>
java实现的加密解密
查看>>
网页瀑布流效果实现的几种方式
查看>>
LINUX与UNIX区别在哪
查看>>
python 快速排序代码
查看>>