Javascript进阶--面向对象之创建方式
Javascript的6种数据类型
五种基本数据类型(string、number、boolean、null、undefined)和一种复杂数据类型(Object)
typeof 123 --> "number"
typeof 'abc' --> "string"
typeof true --> "boolean"
typeof undefined --> "undefined"
typeof null --> "object"
typeof [] --> "object"
typeof {} --> "object"
null类型进行typeof操作符后,结果是object,原因在于null类型被当作一个空对象引用
一.通过字面量方式创建
1)简单字面量
var person = {} //创建空对象
person.name = 'Sean';
person.age = 18;
pserson.doSth = function(){
console.log('do something');
}
2)嵌套字面量(推荐)
var person = {
name: 'Sean',
age: 18,
doSth: function(){
console.log('do something');
}
}
注意:上文中key: value形式的数据中,如果key带 空格( )、连接符(-)、关键字,需要用引号括起来 例: 'user name': 'Sean'
二.通过“构造函数”方式创建
var obj = new 函数名();
通过该方法创建对象时,会自动执行该函数,这点类似于Java通过类创建对象时会自动调用构造函数,因此该方法称为通过“构造函数”方式创建对象
定义构造函数
function Person(name,age){ //约定首字母大写
this.name = name; // 通过this关键字设置默认成员
this.age = age;
this.doSth = function(){
console.log('do something');
}
};
创建对象
var person = new Person('Sean',18);
三、通过new Object方式创建
先通过Object构造器new一个对象,再往里丰富成员变量
var person = new Object();
person.name = 'Sean';
person.age = 18;
person.doSth = function(){
console.log('do something');
}