面向对象(Object—oriented,OO)的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意多个具有相同属性和方法的对象。前面提到过,EcMAScript中没有类的概念,因此它的对象也与基于类的语言中的对象有所不同。
ECMA一262把对象定义为:“无序属性的集合,其属性可以包含基本值、对象或者函数。”严格来讲,这就相当于说对象是一组没有特定顺序的值。对象的每个属性或方法都有一个名字,而每个名字
都映射到一个值。正因为这样(以及其他将要讨论的原因),我们可以把ECMAScr‘ipt的对象想象成散列表:无非就是一组名值对,其中值可以是数据或函数。
每个对象都是基于一个引用类型创建的,这个引用类型可以是第5章讨论的原生类型,也可以是开发人员定义的类型。
南昌网络公司技术人员举例创建对象
创建自定义对象的最简单方式就是创建一个0bject的实例,然后再为它添加属性和方法,如下所示:
Var person=new 0bject:();
person.name="Baiheng":
person.age=29;
person.job= "Web software";
pezson.sayName = function(){
alert(this.name);
};
person.sayName();
上面的例子创建了一个名为person的对象,并为它添加了三个属性(name、age和job)和一个方法(sayName())。其中,sayName()方法用于显示this.name(将被解析为:pex-son.name)的值。早期的.JavaScljpt开发人员经常使用这个模式创建新对象。但这种方式有个明显的缺点:使用同一个接口创建很多对象,会产生大量的重复代码。为解决这个问题,人们开始使用工厂模式的一种变体。
本文仅限于南昌网站设计公司百恒网络内容技术人员查看,请勿作其他商业用途. 文章出自:南昌网络公司-百恒网络 http://www.jxbh.cn 如转载请注明出处!