原创专栏 开源学习

导读:
  原型对象prototype是Object或与之同等级的对象如(function,Number)的一个属性,protorype是个对象。typeof的值是object。
  如果看了上一小节的最后一个例子,对自定义的“类”应该比较熟悉了。
  在javascript中,可以说没有方法,因为函数和字符串一样也是种数据类型,但类中的函数可以用this关键字。下面我说的类的属性可以是方法,也可以指字段。
  在一个自定义“类”中有中有几个地方可以定义属性。
   a、函数名中直接定义。? 如Person.name。在这定义相当于类名的属性。静态的,访问的时候必须用Person.name来访问,不能用new Person().name访问,也访问不到。
   b、构造函数的this.中。当你用new function()时,这些属性就是你所持对象的属性。用new Person().属性? 来访问。
   c、构建好对象以后,给对象增加属性。和构造函数中的属性使用类似。
   d、函数名的prototype中
   e、父类或Object 的prototype中。
   (1)对象属性优先级
  通过运行以下代码,我们访问对象属性优先级如下:c>b>d>e
  c种属性必须在定义以后访问才有效。a种属性实例访问不到。
  javascrpt语言预定义的属性不能用for in 得到。如toString
  <script?LANGUAGE?=?"JavaScript"> ? ?
   (2)prototype属性是只读的
  看如下代码,你不要试图通过变量改变原型对象的属性。你也不可能改变,你只会通过c模式给对象增加一个属性。
  另外原型对象是所有实例共享的。理论上也不可以改变。
   ?</script>?

本文转自
http://www.blogjava.net/zkjbeyond/archive/2006/04/17/41531.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值