对象创建
//第一种,new一个
var girl = new Object();
girl.name = "dada";
girl.age = 18;
girl.sayhello = function(){
alert('hello!');
}
//第二种 直接 {} 但需要用:
var gf = {
name:'dada',
sayhello:function(){
alert('hello!');
}
}
//构造 函数 用this。
function Gz(name,age){
this.name = name;
this.age = age;
this.sayhello = function(){
alert('hello!');
}
}
var girl = new Gz('dada',18);
//常用混合方式 构造加原型,后面讲原因
function Gz(name,age){
this.name = name;
this.age = age;
}
GZ.prototype.sayhello = function(){
alert('hello!');
}
var girl = new Gz('dada',18);
//工厂模式
function create(name, age) {
var obj = new Object();
obj.name = name;
obj.age = age;
obj.sayhello = function(){
alert('hello!');
}
return obj;
}
var girl = create('dada','18');
构造函数
和函数的形式上差不多,但函数名要大写,这样别人才知道这是构造函数。作用:实例化用,或被其他构造函数引用。
function Person(){} //构造函数
var p=new Person(); //实例化
原型对象模式
function Gz(){
Gz.prototype.name = 'dada';
Gf.prototype.age = 18;
Gz.prototype.sayhello = function() {
alert('hello!');
}
}
var girl1 = new Gz();
var girl2 = new Gz();
另外
for(key in arr){} key是键值,
for(key of arr){ } value是arr[key]