使用函数创建Javascript对象

时间:2012-03-22 23:29:51

标签: javascript

var boxArea = function() {
    this.width=2;
};

alert(boxArea.width);

美好的一天。为什么这会返回未定义的值?

2 个答案:

答案 0 :(得分:3)

因为您使用该语法创建了一个函数。您必须在函数()前面添加“new”关键字,以使其等同于类。

jsFiddle演示:http://jsfiddle.net/dfUQu/

var boxArea = new function() {
    this.width=2;
};

alert(boxArea.width);​

答案 1 :(得分:0)

创建javascript构造函数的经典方法是使用声明的函数:

function BoxArea(width) {
  this.width = width;
}

按照惯例,构造函数的名称以大写字母开头。然后创建一个实例:

var ba = new BoxArea(2);

alert(ba.width); // 2

对于这样一个简单的对象,您可以这样做:

var ba = {width: 2};