JS(javaScript)的with用法

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的用法,这里进行下总结:

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

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

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

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

这里有个很简单的例子:

function Lakers() {
       this.name = "kobe bryant";
       this.age = "28";
       this.gender = "boy";
}  <span style="font-family: Arial, Helvetica, sans-serif;">//使用函数容器创建对象</span>
var people=new Lakers();
with(people)
{
       var str = "姓名: " + name + "<br>";
       str += "年龄:" + age + "<br>";
       str += "性别:" + gender;
       document.write(str);
}  

这样使用,会得到结果:

姓名: kobe bryant

年龄:28

性别:boy

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

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

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

var t=document.getElementById("dd");

t.style.cssText="width:200px;height:300px";

还可以

with(t.style){

width=‘300px‘;

height=‘300px‘;

}

3 而对于变量的搜索方法

通过日志:http://www.jb51.net/article/7961.htm 可以总结出:先搜素对象中的变量,不能匹配的话就去匹配with直接定义的变量,还找不到就定义为undefined.

时间: 2024-08-03 20:44:10

JS(javaScript)的with用法的相关文章

javascript基础——文字变大变小className的使用及JS浮动的兼容用法

文字变大变小,详情页比较常见的那种 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>文字放大缩小及className的使用</title> <style> #p1{ width: 960px;} .red ,.green{ width:400px; border:5px solid #333;

js的offsetParent属性用法详解

js的offsetParent属性用法详解:此属性是javascript中较为常用的属性,对于它的良好掌握也是非常有必要的,下面就通过代码实例介绍一下它的用法,希望能够给需要的朋友带来一定的帮助.一.基本介绍:此属性可以返回距离指定元素最近的采用定位(position属性值为fixed.relative或者absolute)父级元素,如果父级元素中没有采用定位的元素,则返回body对象的引用.语法结构: obj.offsetParent 二.代码实例: <!DOCTYPE html> <

js的nextSibling属性用法简单介绍

js的nextSibling属性用法简单介绍:此属性可以返回当前节点的下一个同级节点.如果下一个同级节点不存在,则此属性返回值是null.语法结构: elementNode.nextSibling 代码实例: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softw

#Javascript:this用法整理

常用Javascript的人都知道,[this這個關鍵字在一個函式內究竟指向誰]的這個問題很令人頭大,本人在這裡整理了一下Javascript中this的指向的五種不同情況,其中前三種屬於基本的情況,而後兩種情況可基於前三種情況的方式來進行思考. 1.this指向於調用該函式之物件 如果你有學過C/C++,你可能會記得一個物件內的成員函式裡的this指的即是該成員函式所在之物件,但在Javascript裡則有那麼些許不同,Javascript裡的this看的是究竟是誰調用該函式,而不是看該函式被

js javascript:void(0) 真正含义

http://www.cnblogs.com/opper/archive/2009/01/12/1373971.html js javascript:void(0) 真正含义 我想使用过ajax的都常见这样的代码:<a href="javascript:doTest2();void(0);">here</a>但这儿的void(0)究竟是何含义呢?Javascript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值.void 操作符用法格式如下:1

js确认框confirm()用法实例详解

先为大家介绍javascript确认框的三种使用方法,具体内容如下 第一种方法:挺好用的,确认以后才能打开下载地址页面.原理也比较清晰.主要用于删除单条信息确认. ? 1 2 3 4 5 6 7 8 9 10 <SCRIPT LANGUAGE=javascript> function del() {  var msg = "您真的确定要删除吗?\n\n请确认!";  if (confirm(msg)==true){   return true;  }else{   retu

js/javascript代码注释规范与示例

注释在代码编写过程中的重要性,写代码超过半年的就能深深的体会到.没有注释的代码都不是好代码.为了别人学习,同时为了自己以后对代码进行‘升级’,看看js/javascript代码注释规范与示例.来自:http://www.56.com/style/-doc-/v1/tpl/js_dev_spec/spec-comment.html 文件注释 文件注释位于文件的最前面,应包括文件的以下信息:概要说明及版本(必须)项目地址(开源组件必须)版权声明(必须)开源协议(开源组件必须)版本号(必须)修改时间(

javascript中createTextRange用法(focus)

createtextrange createrange区别: 对象或元素不同,虽然都是返回TextRange.例如:     var r=document.body.createTextRange()    var r=document.createRange() document. createTextRange 可以对body.TEXTAREA.BUTTON创建TextRange,Range -- 范围 返回createTextRange的text和htmlText Js代码 <script

js createElement appendChild createTextNode用法

xml不支持innerHTML 1 <p id="bj">北京</p> 2 <script type="text/javascript"> 3 //创建<div> 节点,添加到<body>节点中 4 var divElement=document.createElement("div"); 5 divElement.innerHTML="<B>AFASFD</

Atitit.js javascript异常处理机制与java异常的转换.js exception process Voae

Atitit.js javascript异常处理机制与java异常的转换.js exception processVoae 1. 1. javascript异常处理机制 1 2. 2. Web前后台异常的统一处理 1 3.  java异常转换为js异常 1 3. -------------详细代码 2 1. 1. javascript异常处理机制 Throw str Not throw error  ..cause ie,ff error obj is diff.. 2. 2. Web前后台异常