函数的发展历程(声明函数的方式):     1.通过Object构造函数或字面量的方式创建单个对象 var obj = new Object; obj.name="新华"; obj.age=18; obj.methods=function(name,age){ return "我的名字是"+name+"年龄:"+age } console.log(obj.name,obj.age,obj.methods("新华",18))…
一.对象创建方式 1. 工厂模式 这种模式抽象了创建具体对象的过程,用函数来封装以特定接口创建对象的细节.存在的问题是无法通过 instanceof 识别一个对象的类型. function createPerson(name,age,job){ var o=new object(); o.name=name; o.age=age; o.job=job; o.sayName=function(){ alert(this.name); } return o; } var person=createP…
6.1 理解对象 6.1.1 对象属性类型 ECMS属性有两种类型:数据属性和访问器属性 1 数据属性 [[configurable]] 表示能否通过Delete 删除属性从而从新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性.对象上定义的属性默认值为true [[enumerable]] 表示能否通过for-in循环返回属性.直接在对象上定义的属性,它们的这个特性默认值为true [[writable]] 表示能否修改属性值.像前面例子中那样直接在对象上定义的属性,它们默认值为t…
一.工厂方式可以为一个对象,创建多个实例. var oCar = new Object; oCar.color = "red"; oCar.doors=4; oCar.mpg=23; oCar.showColor = function(){ alert(this.color); } 上面的代码,创建car对象,并赋予属性和方法.执行代码后就可以使用对象,问题是我们经常需要重复.创建多个实例. 解决此问题的方法是:创建能够返回特定类型的对象的工厂函数. function createCa…
javascript中实现继承的三种方式:原型继承.借用构造函数继承.混合继承: /* js当中的继承 js中 构造函数 原型对象 实力对象的关系: 1 构造函数.prototype = 原型对象 2 原型对象.constructor = 构造函数(模板) 3 原型对象.isPrototypeOf(实例对象) 判断实例对象的原型是不是当前对象 4 构造函数 实力对象 是 类和对象的关系 */ /* 1 原型继承 给子类构造函数的原型对象赋值为父类构造函数的实例 赋值之后产生的关系: 1 子类的原…
于Unity3D动态创建对象和创建Prefab三种方式的原型对象 u3d在动态创建的对象,需要使用prefab 和创建时 MonoBehaviour.Instantiate( GameObject orignal) 需要的对象为原型. 文提供三种方式获得prefab对象. 方式一:使用脚本的public字段 直接在Project视图里找到做好的prefab,将其拖拽到指定脚本的指定public GameObject 字段.   方式二:Resource类 1.在Assets目录下的任何位置创建一…
通过构造函数生成的实例化对象,无法共享属性或方法(即每个实例化对象上都有构造函数中的属性和方法):造成了一定的资源浪费 function Obj(name,age){ this.name=name; this.age=age; this.func=function(){ return 'this is a test function'; }; } var o1=new Obj('小明',10); var o2=new Obj('小白',12); console.log(o1.func===o2.…
<script type="text/javascript"> var o = {}; var o1 = new Object();//这2种方式创建对象是一样的,因为对象都有默认属性constructor构造器,函数也是对象,js一切都是对象,函数也有构造器函数也是对象,构造器是对象的. o.constructor 的构造器为 function Object(); o1.constructor 的构造器为 function Object(); o.constructor…
js最好的继承机制:用对象冒充继承构造函数的属性,用原型prototype继承对象的方法. function ClassA(sColor) { this.color = sColor; } ClassA.prototype.sayColor = function () { alert(this.color); }; function ClassB(sColor, sName) {//在 ClassB 构造函数中,用对象冒充继承 ClassA 类的 sColor 属性 ClassA.call(th…
js一种继承机制:用对象冒充继承构造函数的属性,用原型prototype继承对象的方法. function ClassA(sColor) { this.color = sColor; } ClassA.prototype.sayColor = function () { alert(this.color); }; function ClassB(sColor, sName) {//在 ClassB 构造函数中,用对象冒充继承 ClassA 类的 sColor 属性 ClassA.call(thi…