如果这个
document.defaultView && document.defaultView.getComputedStyle
成立返回
document.defaultView.getComputedStyle(elem,"")

getPropertyValue(name)
得到的值上面所说的两个函数得到的值同时返回getPropertyValue(name)看名字是返回属性值

解决方案 »

  1.   

    return s && s.getPropertyValue(name)
    是确保s存在,如果s不存在(undefined),那么 .getPropertyValue 的时候将报错
      

  2.   

    return a&&b 表示返回值:当a不存在时返回a,否则返回b。【与 return a||b 相反】
    所以:return s && s.getPropertyValue(name)当s不存在时返回s,当s存在时返回s.getPropertyValue(name)。因为s.getPropertyValue(name)是最后一个值,所以不管它是什么都返回它。
      

  3.   

    a && b -- if a=true return b else return a;
    我承认我在二楼乱说,抱歉。
      

  4.   


    补充一下。你的理解还是有误的。我用代码测试过了.  function func() {
          this.hello=function () {alert("hello");};
      this.a="testing";
      }
      var a = new func();
      function returnValue() {
      this.v="v";
      var i=10;
          return this.p && a.a;
      }
    alert(returnValue());上面会提示undefined 。
    正确的理解是,return a&&b 表示返回值:如果a存在值(不是null,undefined,0,false etc),会返回b的值,否则,会返回一个unfefined (null,false之类)