javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > Javascript中Object与Function对象

浅谈Javascript中Object与Function对象

投稿:hebedich

JavaScript的面向对象是基于原形的,所有对象都有一条属于自己的原型链。Object与Function可能很多看Object instanceof Function , Function instanceof Object都为true而迷惑,所以首先看下对象的实例

1.Object对象

  原型对象
          原型是对象的一个属性,也就是prototype属性,每个对象都有这个内部属性,而且他本身也是一个对象。

<script type="text/javascript">
   Object.prototype.num= 10;
   alert("添加原型对象属性:"+ Object.num);
   Object.num = 20;
   alert("添加对象属性:"+Object.num);
</script>

原型链

Object.prototype.a = 3.14;
alert("Object对象的实例:"+ new Object().a);
alert("String对象的属性:"+ String.a);


         分析:当扩展了Object的原型后,相当于对象变为Object. prototype,也就是所有本地对象均拥有此对象的属性,因为所有的本地对象均继承与Object对象,所以String也有属性a的值。 

2.Function对象

arguments对象
       当一个函数执行的时候,系统会自动为函数对象创建一个 arguments对象属性,arguments对象属性,只能使用在函数体中,并用来管理函数的实际参数。

         (1)caller属性

                 caller属性显示了函数的调用者,所以下面的例子,调用函数a的为function b();调用函数b的为null;

<script type="text/javascript">
  var a = new Function("alert('a:'+a.caller)");
  function b()
  {
   a();
   alert('b:'+b.caller);
  }
  b();
</script>    

         (2)length属性

                length是arguments对象的属性,表示函数被调用时传递的参数个数,可以通过数组的方式访问某个实际参数。

function argc()
{
  alert(arguments[0]+arguments[1]+arguments[3]);
}
argc(1,2,3);

  运行结果为6

您可能感兴趣的文章:
阅读全文