[英]Returning an object from a function in JavaScript
我有一個在 javascript 中返回一個對象的函數。 返回的對象是我想發送到服務器的“messagePack”的實例。 每個 messagePack 都會不同。 例如:
function someFunc() {
return {
name: "chatMessage",
time: Date.now(),
data: "yooo hoooo",
hash: hashFunc()
}
}
然后我創建一個創建 messagePack 並將其添加到數組中:
var messagePack = someFunc();
msgArray.push(messagePack)
這個可以嗎? 我應該為消息包創建構造函數並使用 new 關鍵字嗎? 我已經在類似的情況下看到過這種情況,但我不明白為什么我正在做的事情不起作用。
當您有多個包含相同數據的對象(例如函數或常量)時,構造函數很有用。 由於您沒有此重復數據(我相信),因此您不需要它們。 如果你有重復的數據,你可以這樣做:
var message_prot={
name: "chatMessage",
time: Date.now(),
data: "yooo hoooo",
hash: false
};
function somefunc(){
a=Object.create(message_prot);
a.name="Hi";
a.hash=hashfunc();
return a;
}
這是工廠模式,完全正確。 您不需要使用構造函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.