javascript的with表示什么?

作者&投稿:仇由阎 (若有异议请与网页底部的电邮联系)
javascript中的with()是什么方法?~

with()和if()没有关系。
with(obj)作用就是将后面的{}中的语句块中的缺省对象设置为obj,那么在其后面的{}语句块中引用obj的方法或属性时可以省略obj.的输入而直接使用方法或属性的名称。比如:
不用with()时:
function validate_email(field,alerttxt){
field.apos=value.indexOf("@")
field.dotpos=value.lastIndexOf(".")
if (field.apos<1 || field.dotpos-field.apos<2) {
alert(alerttxt);
return false
}else {
return true
}
}
用了with(field)后,上面函数中的field.都可以省略了,减少了输入的工作量。

with 是语句是属于语法里面的,不是属于方法,方法是对象才有.
with 语句是对对象内部变量/方法进行解析,不建议使用它,同没有使用with相比它运行跟慢.
注意:只有在只用于查找,不能用于新建内部变量/方法.

with 语句
为语句设定默认对象。
with (object)
statements
参数
object
新的默认对象。
statements
一个或多个语句,object 是该语句的默认对象。
说明
with 语句通常用来缩短特定情形下必须写的代码量。在下面的例子中,请注意 Math 的重复使用:
x = Math.cos(3 * Math.PI) + Math.sin(Math.LN10)
y = Math.tan(14 * Math.E)

当使用 with 语句时,代码变得更短且更易读:
with (Math){
x = cos(3 * PI) + sin (LN10)
y = tan(14 * E)
}

  with 语句可以方便地用来引用某个特定对象中已有的属性,但是不能用来给对象添加属性。要给对象创建新的属性,必须明确地引用该对象。

  with(object instance)

  {

  //代码块

  }

  有时候,在一个程序代码中,多次需要使用某对象的属性或方法,照以前的写法,都是通过:对象.属性或者对象.方法这样的方式来分别获得该对象的属性和方法,着实有点麻烦,学习了with语句后,可以通过类似如下的方式来实现:

  with(objInstance)

  {

  var str = 属性1;

  .....

  } 去除了多次写对象名的麻烦。

  举例:
<script language="javascript">
<!--
function Lakers() {

this.name = "kobe bryant";
this.age = "28";

this.gender = "boy";
}
var people=new Lakers();

with(people)
{
var str = "姓名: " + name + "<br>";

str += "年龄:" + age + "<br>";

str += "性别:" + gender;
document.write(str);
}

//-->
</script>

  代码执行效果如下:

  姓名: kobe bryant

  年龄:28

  性别:boy

with 可以给with的大括号内部的代码提供一个上下文,比如代码

with(obj) {

// 代码

}

当这段代码引用一个变量的时候,先在obj的成员里面找,如果找不到,则认为是外部变量,比如函数的局部变量,全局变量等等。当obj很长的时候,这样写可以省去一些麻烦,比如这样:

obj1.obj2.obj3.obj4.obj5.method1();

obj1.obj2.obj3.obj4.obj5.method2();

obj1.obj2.obj3.obj4.obj5.method3();

obj1.obj2.obj3.obj4.obj5.method4();


我要调用这个嵌套很深的obj5的四个方法,我就得这么写,看起来很麻烦,那么with就可以这么写了

with(obj1.obj2.obj3.obj4.obj5) {

method1();

method2();

method3();

method4();

}

省了点事情。

但是,下面我要说但是了,with是一把双刃剑,尽量别用。或者说,绝对不要用,理由如下

  1. JavaScript的严格模式不支持with。

  2. 容易引起歧义。还是上面的例子,如果method4这个函数在obj5中不存在,不用with的话,JS直接崩溃,容易查错,但是用了with,有可能一个外部的名为method4就被调用了,可能引起错误蔓延。

  3. 如果有上面的问题的话,object名字很长,可以用下面的方法代替:

    var tempObj = obj1.obj2.obj3.obj4.obj5;

    temoObj.method1();

    temoObj.method2();

    temoObj.method3();

    temoObj.method4();



当你有一个对象的多个属性或者方法需要操作时,就可以使用with

比如
<body>
test
<script type="text/javascript">
var o=document.createElement("div");
with(o){
style.cursor="pointer";
style.zIndex="100";
innerHTML="aaaa";
}
document.body.appendChild(o);
</script>
</body>
上面的代码相当于

<body>
test
<script type="text/javascript">
var o=document.createElement("div");
o.style.cursor="pointer";
o.style.zIndex="100";
o.innerHTML="aaaa";
document.body.appendChild(o);
</script>
</body>

所以with 用于简化 代码 操作。

这个是开域语句,
表示在with语句中的任何表达式的所属对象或者是类都由with后紧跟的变量所代表


javascriptjavascript成熟分类
JavaScript语言是一种非常成熟的编程语言,已经发展出了许多分类。下面将介绍一些关键的JavaScript分类。1. 通用目的编程语言:JavaScript是一种通用目的的编程语言,可以广泛应用于Web开发、移动应用开发、游戏开发等领域。它的灵活性和易用性使其成为众多开发者的首选语言。2. 前端开发:作为Web开发中不可或...

JavaScript是什么?
JavaScript是一种脚本语言。诞生与1995年,当时是为了处理服务端某个语言负责的某个没有填写的必填域。它是由Netscape公司布兰登.艾奇为NetscapeNavigator2开发的一种脚本语言,刚开始的时候是叫LiveScript。由于当时Java语言的盛行,LiveScript在发布前夕,临时更名为JavaScript。JavaScript是一种专为与网页交互而...

JavaScript有哪些成熟的分类?
JavaScript的成熟分类主要包括核心JavaScript、文档对象模型(DOM)、浏览器对象模型(BOM)以及JavaScript框架与库。核心JavaScript 核心JavaScript是JavaScript语言的基础,它定义了语言的语法、类型、运算符、函数、作用域等核心概念。这部分内容不涉及任何特定环境或宿主对象,是通用且纯粹的编程语言知识。例如,...

浏览器怎么开启javascript支持
浏览器开启JavaScript支持的方法如下:IE浏览器开启JavaScript方法:在IE界面菜单栏中“工具”中选择“Internet选项”–“安全”选项卡–选择“Internet”(蓝色的小地球)–“自定义级别”–找到“脚本”下的“Java小程序脚本”中进行启用。360浏览器开启JavaScript方法:在360界面菜单栏的“工具”中选择“360...

JavaScript有几种分类?
JavaScript 本身并不是以“分类”来直接区分的,但可以从不同的角度和用途来理解和使用 JavaScript。这里,我会列举几种常见的理解和使用 JavaScript 的方式或“分类”:ECMAScript(核心JavaScript):ECMAScript 是 JavaScript 的语言标准,由 ECMA 国际(前身为欧洲计算机制造商协会)制定。它定义了 ...

javascript是干什么的
JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的是一种解释性脚本语言(代码不进行预编译)主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。可...

javascript是什么意思
JavaScript是一种基于对象和事件驱动并具有安全性能的脚本语言。Javascript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符及程序的基本程序框架。Javascript提供了四种基本的数据类型和两种特殊数据类型用来处理数据和文字。而变量提供存放信息的地方,表达式则可以完成较复杂的信息处理。JavaScr...

javascript中的“ javascript:;”是什么意思?
JavaScript中的"javascript:;"是一种特殊的URL格式,用于在网站中使用JavaScript来执行特定的任务或操作。点击学习大厂名师精品课以下是一些解决方法,可以有效解决“javascript:;”带来的问题:1、使用未定义的JavaScript函数:可以将“javascript:;”替换为一个未定义的函数名称,例如“javascript:void(0);”...

javascript是啥
JavaScript是一种具有函数优先的轻量级,解释型或即时编译型的高级编程语言。虽然它是作为开发Web页面的脚本语言而出名的,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。JavaScript在1995年由Netscape公司的...

JS全称是什么
js 的全称是javascript ,JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

伊犁哈萨克自治州13171112101: javascript的with表示什么? -
徭冰柳酚: with 语句可以方便地用来引用某个特定对象中已有的属性,但是不能用来给对象添加属性.要给对象创建新的属性,必须明确地引用该对象.with(object instance){//代码块}有时候,在一个程序代码中,多次需要使用某对象的属性或方...

伊犁哈萨克自治州13171112101: 各位大神,javascript中的with()方法是什么意思,怎么用
徭冰柳酚: 说白了就是当你有一个对象多个属性或者方法时候 都有with后边紧跟的变量代表...多看一个例子就懂了

伊犁哈萨克自治州13171112101: javascript的with表示什么?
徭冰柳酚: 当你有一个对象的多个属性或者方法需要操作时,就可以使用with 比如 &lt;body&gt; test &lt;script type="text/javascript"&gt; var o=document.createElement("div"); with(o){ style.cursor="pointer"; style.zIndex="100"; innerHTML="aaaa"; ...

伊犁哈萨克自治州13171112101: javascript的function带有with是什么意思 -
徭冰柳酚: javascript的function带有with和vb一样,就是把document.regsiter作为默认对象,那个{}里面的document.regsiter可以省了.参考下图:

伊犁哈萨克自治州13171112101: JS中with函数的作用 -
徭冰柳酚: x = Math.cos(3 * Math.PI) + Math.sin(Math.LN10) y = Math.tan(14 * Math.E) ==> with (Math){ x = cos(3 * PI) + sin (LN10) y = tan(14 * E)}

伊犁哈萨克自治州13171112101: js有startwith方法吗 -
徭冰柳酚: 没有,需要自己实现:String.prototype.startWith=function(str){var reg=new RegExp("^"+str);return reg.test(this); }String.prototype.endWith=function(str){var reg=new RegExp(str+"$");return reg.test(this); }

伊犁哈萨克自治州13171112101: 兄才,看一下这句javascript是什么意思啊 -
徭冰柳酚: 下面的语句 var c = document; with(c) { write("hello!"); } 和 document.write("hello!"); 将会有一样的效果.with(obj) {} 语句,提供了一种缩略书写的方式; 在花括号内,不必书写obj对象,而直接调用起属性或方法.和VB的With语法不一样,javascript中的with语句不惜书写前缀 .

伊犁哈萨克自治州13171112101: 下面JavaScript各行代码语句后注释怎样写? -
徭冰柳酚: JavaScript 注释有单行注释和多行注释两种 单行注释用//表示,如://我是注释,不执行 多行注释用/* */表示,如: /* 我是多行注释 不执行*/

伊犁哈萨克自治州13171112101: 下面是javascript代码,其中“validate - required” -
徭冰柳酚: validate_required是函数名称 with(field):with关键字,表示field作为花括号里面的变量的共同对象所拥有 形如:if(field.value==null||field.value=="")

伊犁哈萨克自治州13171112101: javascript中“filters[0].apply();”这段代码的含义 -
徭冰柳酚: 1. var tds=objid.getElementsByTagName('td');//objid应该是指某一个表格的id2. filters[0].apply(); //表示上面取出的td集合中的第一个(这堆td应该都带有 style="filter:xxxxxx"),所以这里指使用滤镜的第一个组合的方法【filters(滤镜数值)....

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网