JavaScript對象是”屬性的無序集合”,裏面以鍵/值對顯現;屬性爲字符串,其值爲任意類型。
JavaScript中的所有事物都是對象:字符串、數組、數值、函數 …,JavaScript提供了基本的內置對象供開發人員直接使用,如:FormData,String,Date,Array,File等。
在項目開發中,一些固定的邏輯或功能,通常會封裝在自定義的JavaScript對象中,以便於代碼的複用和管理。
訪問對象屬性
var value = object.propertyName;
var value = object['propertyName'];
調用對象的方法
object.methodName();//無參
object.methodName(parm1,...);//有參
自定義對象的創建
1.字面量創建對象
person=new Object();
person.firstname="Bill";
person.lastname="Gates";
person.age=56;
person.eyecolor="blue";
//或者:
person = {
firstname:'Bill',
lastname:'Gates',
age:56,
eyecolor:'blue'
}
2.new 構造函數
function People(name) {
this.name = name;
this.createTool = function(){
console.log('I can fly');
}
}
var people = new People('Paula');
people.createTool();
3.使用Object.create(prototype,propertyDescriptor)
參數prototype:創建對象的原型,若爲null,即對象的原型爲undefine
propertyDescriptor:{} 可選,描述屬性
function Animal() {
}
Animal.prototype = {
actions: function(){
console.log('RUN');
}
};
//以Animal對象爲原型,可繼承其它原型的方法
var people = Object.create(Animal.prototype,{
name:{value:'tom'},
age:{value:56},
createTool: {value:
function(){
console.log('I CAN JUMP');
}
}
});
console.log(people.name);
console.log(people.age);
people.createTool();
people.actions();