在 JavaScript 中建立物件的方法有很多種。
這可能是在 JavaScript 中建立物件最快、最簡單的方法。這也稱為物件初始值設定項,是一個由零對或多對物件的屬性名稱和關聯值組成的逗號分隔列表,括在大括號 ({}) 中。
const newObject = {} // Simply create a new empty object const newObject = { someKey: "someValue", anotherKey: "anotherValue" }
物件值可以是原始資料型別或其他物件。
您可以使用內建的物件建構函式建立物件。
如果傳遞的值為 null 或未定義或未傳遞任何值,則它將建立並傳回空物件。
如果該值已經是一個對象,則傳回相同的值。
// below options create and return an empty object const ObjWithNoValue = new Object(); const ObjWithUndefined = new Object(undefined); const ObjWithNull = new Object(null); const newObject = { someKey: "someValue", anotherKey: "anotherValue" } const sameObject = new Object(someObject); sameObject['andAnotherKey'] = "one another value"; sameObject === newObject; // both objects are same.
此方法可讓您建立具有特定原型的新物件。這種方法使新物件能夠從原型繼承屬性和方法,從而促進類似繼承的行為。
const person = { greet: function () { console.log(`Hello ${this.name || 'Guest'}`); } } const driver = Object.create(person); driver.name = 'John'; driver.greet(); // Hello John
在 ES6 之前,這是建立多個相似物件的常用方法。建構函數只不過是一個函數,借助 new 關鍵字,您可以建立一個物件。
當您使用“new”關鍵字建構物件時,將函數名稱的第一個字元大寫是一個很好的做法。
function Person(name, location) { this.name = name; this.location = location; greet() { console.log(`Hello, I am ${this.name || 'Guest'} from ${this.location || 'Earth'}`); } } const alex = new Person('Alex'); alex.greet(); // Hello, I am Alex from Earth const sam = new Person('Sam Anderson', 'Switzerland'); sam.greet(); // Hello, I am Sam Anderson from Switzerland
更現代的方法有助於創建對象,就像其他 OOP 程式語言一樣,使用具有建構函數的類別來初始化屬性和方法。
class Person { constructor(name, location) { this.name = name || 'Guest'; this.location = location || 'Earth'; } greet() { console.log(`Hello, I am ${this.name} from ${this.location}`); } } const santa = new Person('Santa'); santa.greet(); // Hello, I am Santa from Earth
參考:
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3