【发布时间】:2013-06-21 14:34:59
【问题描述】:
我是 Javascript 新手,我正在学习如何使用 OOP 原则。我坚持分配对象属性,然后再访问它们。 假设我有一个将属性分配给对象“Car”的函数。
function assignProps()
{
Car.size="small";
Car.cost="expensive";
}
具有空属性的对象 Car,因为它们是从函数分配的。
var Car =
{
size:"",
cost:"",
returnSize: function()
{
return this.size;
},
returnCost: function()
{
return this.cost;
},
}
现在,我想调用分配值的函数,然后访问 Car 的属性。我试过这样做,但显然失败了:
function accessProps()
{
assignProps();
console.log(Car.returnSize());
console.log(Car.returnCost());
}
任何帮助将不胜感激。我有一种感觉,这可能与构造函数或原型有关,但是由于在 Javascript 中创建自定义对象的方法很多,因此文档非常混乱。
编辑:“失败”是指它输出空白而不是新分配的值 编辑:我也尝试过这样做,并且产生了相同的结果。
【问题讨论】:
-
什么失败了?错误信息是什么?它在哪一行失败,这对应于您的代码中的哪一行?
-
你忘记调用 accessProps() 了吗?
-
你能按顺序显示整个代码吗?在哪里创建
Car以及何时调用accessProps? -
它可能失败了,因为您不能/不能在对象文字声明中使用
=。你应该使用:。例如:var Car = { size: "", cost: "" }; -
根据您的浏览器,您应该使用其内置控制台,如开发者工具(或来自扩展程序,如 Firebug),这本可以避免
标签: javascript