Node.js
我有一个由刮板构建的相当简单的 javascript/jquery 对象。一切都按原样工作(obj.prod_name_select
并且它的对应物返回 jquery 选择器,它们在 Node 中解析得很好)。
这是对象:
var product = {
name : $(obj.prod_name_select).text(),
systemName : function(){
return product.name.replace(/\s+/g, ' ');
},
gender : obj.gender,
infoLink : link,
designer : $(obj.label_name_select).first().text(),
description : function(){
var text = $(obj.description).each(function() {
var content = $(this).contents();
$(this).replaceWith(content);
});
return text;
},
price : $(obj.price_select).first().text(),
store : obj.store,
category : obj.general_cat,
spec_cat : obj.spec_cat
}
console.log(product);
当我用 Node 运行它时,除了由函数设置的属性外,它一切正常。这些返回[FUNCTION]
节点。这是来自控制台的日志:
{ name: 'BAGGY PANTS!T',
systemName: [Function],
gender: 'men',
infoLink: 'http://www.hereisthecorrecturl.com',
designer: 'Fancy Designer',
description: [Function],
price: '$180.00',
store: 'Correct Store Name',
category: 'Correct Category',
spec_cat: 'Correct Category' }
这是一个异步问题吗?似乎 console.log 是在运行属性函数之前发生的。解决这个问题的最佳方法是什么?