JS创建对象的方式
对象的定义:无序属性的集合,函数也是对象。
a. 工厂模式,用函数来封装以特定接口创建对象的细节。如下:
function factory(name,number,score){
var o=new Object();
o.name=name;
o.number=number;
o.score=score;
return o;
}
var obj = new factory('leo',1,60);
b.构造函数。创建一个新对象,将构造函数的作用域赋给新对象(this),执行构造函数中的代码,最后返回新对象。如下:
function Student(name,number,score){
this.name=name;
this.number=number;
this.score=score;
this.outPut=function(){
console.log('name:'+this.name+'\nnumber:'+this.number+'\nscore:'+score);
}
}
var yu=new Student('monkey',1001,99);
构造函数始终都应该以大写字母开头.
c.原型模式。所有的函数都有一个原型(prototype)属性,通过将信息添加到原型对象中去,让所有新建的对象实例共享这些信息。
function Person(){
}
Person.prototype.name='300kuai';
Person.prototype.number=38;
Person.prototype.score=59;
Person.prototype.outPut=function(){
console.log('name:'+this.name+'\nnumber:'+this.number+'\nscore:'+this.score);
}
var person1=new Person();
d.自定义类型。组合使用构造函数模式和原型模式。构造函数用于定义实例属性,原型用于定义方法和共享属性。这也是使用最多的一种方法。
- 对象的遍历:
1.for-in。
var obj={'first':'leo','second':'monkey'};
for (var prop in obj) {
console.log(
obj[prop]
);
}
文章摘自:https://www.cnblogs.com/monkeyleo/p/5834015.html
原创文章还有关于原生JS的一些DOM和数组方面的描述,如果有需要的可以去看看