zoukankan      html  css  js  c++  java
  • with

    转载: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;  
    }  <span style="font-family:">//使用函数容器创建对象</span>
    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.html

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

    var t=document.getElementById(dd);
    
    t.style.cssText=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语句结束后,作用域链恢复正常。

  • 相关阅读:
    图像处理之图像分割
    matlab 矩阵运算技巧
    回溯法:八皇后问题
    spring框架学习笔记(二)
    spring框架学习笔记(一)
    java下搭建Webservice服务
    log4j使用
    Mybatis使用
    java序列化与反序列化
    java常用数据类型
  • 原文地址:https://www.cnblogs.com/shixiaomiao/p/4827378.html
Copyright © 2011-2022 走看看