代码学院表示有2种方法可以在JavaScript中创建对象。对象属性分配中的语法错误
1.对象文字符号
var myObject = {
key: value,
key: value,
key: value
};
2.对象的构造方法
var myObject = new Object();
密钥然后可由此加入:
myObj["name"] = "Charlie";
myObj.name = "Charlie"; //shorthand for the first
被要求建立3 o bjects,我尝试了不同的方式来生成具有相同值的对象,但是使用上面提供的模板发生错误。我的代码粘贴如下:
var object1 = {
1: 2,
7: 3,
4: 5
};
var object2 = new Object();
object2['1'] = 2;
object2['7'] = 3;
object2['4'] = 5;
var object3 = new Object();
object3.1 = 2;
object3.7 = 3;
object3.4 = 5;
代码学院给了我一个错误,并找出它到底是什么,我用Chrome的控制台。 Chrome的控制台上分别捆扎每个对象的创建,object1
和object2
可以创建,但是不object3
其产生错误:Uncaught SyntaxError: Unexpected number
更改object3
的代码(从数字改变键为字符串):
var object3 = new Object();
object3.'1' = 2;
object3.'7' = 3;
object3.'4' = 5;
产生错误:Uncaught SyntaxError: Unexpected string
是否可以使用此模板/布局创建object3
以生成object1
的值,或者密钥是否可以不是数字或字符串?字符串,但不是创建object2
的密钥的数字。
的属性名称不能以使用“点阵数字开头' 句法。 object3._1将起作用,但是因为下划线(以及$和字母字符)是合法的语法。 –