昨天我开始学习JavaScript。我正在使用系统科德勒密,但我被卡住了。当我说“卡住”的时候,我的意思是我有一项任务,我看不出是怎么回事。
的任务是:
创建一个数组,myArray。它的第一个元素应该是数字,第二个元素应该是布尔值,第三个元素应该是字符串,第四个元素应该是be...an对象!在前四个元素之后,您可以添加任意类型的元素。
,这是我编写的代码:
var myObj = {
name: 'Hansen'
};
var myArray = [12,true, "Steen" ,myObj.name];错误:
噢,再试一次。myArray的第四个元素是一个对象吗?
希望你能帮我。
发布于 2012-11-23 18:37:18
第四个元素的问题是要传递一个字符串,因为myObj.name被定义为Hansen。相反,传递对象:
var myArray = [12,true, "Steen" ,myObj];发布于 2012-11-23 18:38:32
我不知道那个网站,但你可以:
var myArray = [
12,
true,
"Steen",
{name: 'Hansen'}
];传递给数组的是对象的name属性的值,而不是对象本身的值。
发布于 2012-11-23 19:40:12
您传递的是name属性,而不是第四个数组参数的对象,您可能已经从其他anwers那里知道了这一点。
当你在这里学习的时候,有几种方法和你在这里完成的完全一样。
您的方式更正:
var myObj = {
name: 'Hansen'
};
var myArray = [12, true, "Steen", myObj];其他方式:
// Method 1
var myArray = [12, true, "Steen", {name: 'Hansen'}];
// Method 2
var myObj = new Object();
myObj.name = "Hansen";
var myArray = new Array(12, true, "Steen", myObj);
// Method 3
var myObj = {};
myObj['name'] = 'Hansen'
var myArray = [
12, true, 'Steen', myObj
]每个方法都展示了几种不同的方法来完成相同的工作,您可以混合和匹配代码的等效部分来完成相同的工作。它基本上是在普通JavaScript语法和对象字面语法之间进行互变。
https://stackoverflow.com/questions/13534255
复制相似问题