JavaScript自定義對象

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();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章