【发布时间】:2018-02-27 18:41:55
【问题描述】:
如何定义对象内的函数?
var CustomerDB = {customers:[], addresses:[], stores:[], insertData, addCustomer}
CustomerDB.insertData = function (objData){
objData.forEach(function(element){
if (element.type == "customer"){
CustomerDB.addCustomer(element.data);
};
});
};
CustomerDB.addcustomer = function (customerObj){
customerObj.add_date= new Date();
CustomerDB.customers.push(customerObj);
};
CustomerDB.insertData(allData);
console.log(CustomerDB.customers);
我不断收到未定义 insertData 的错误。我需要做什么?
【问题讨论】:
-
var CustomerDB = {customers:[], addresses:[], stores:[]} -
如果我不在对象中声明方法,程序怎么知道函数属于对象CustomerDB?
-
你已经这样做了:
CustomerDB.insertData = function (objData){...。问题是您试图为CustomerDB.insertData = insertData; CustomerDB.addCustomer = addCustomer;做速记,但insertData和addCustomer不是变量。
标签: javascript function object