空数组的长度(JavaScript Koans)

空数组的长度(JavaScript Koans),javascript,arrays,Javascript,Arrays,正在处理JavaScript Koan。下面是提示,然后是我的答案 我正确地理解了第一部分,但当我将0作为空数组的预期长度时,它表示答案不正确,并显示“预期0为‘填入此值’” 我尝试过0,'0',“,null和未定义(我是编程新手,我确信其中一些没有意义,但我想到了。) 提示: it("should create arrays", function() { var emptyArray = []; expect(typeof(emptyArray)).toBe(FILL_ME_IN)

正在处理JavaScript Koan。下面是提示,然后是我的答案

我正确地理解了第一部分,但当我将0作为空数组的预期长度时,它表示答案不正确,并显示“预期0为‘填入此值’”

我尝试过0'0'null和未定义(我是编程新手,我确信其中一些没有意义,但我想到了。)

提示:

it("should create arrays", function() {
   var emptyArray = [];
   expect(typeof(emptyArray)).toBe(FILL_ME_IN);
   expect(emptyArray.length).toBe(FILL_ME_IN);
我的答覆是:

it("should create arrays", function() {
   var emptyArray = [];
   expect(typeof(emptyArray)).toBe('object');
   expect(emptyArray.length).toBe(0);

确保你的答案是这样的(没有填写),这会有用的

it("should create arrays", function() {
   var emptyArray = [];
   expect(typeof(emptyArray)).toBe('object');
   expect(emptyArray.length).toBe(0);
});

提示:
expect(0)。toBe(FILL_ME_IN)
将向您显示错误“Expected 0 to'FILL this value IN.”。

按照JSKoans中这个问题的编写方式,它看起来像是在原始帖子中我的代码结束的地方结束。然而,在查看了打印出来的出错行之后,我意识到我应该继续编辑更多的行。谢谢大家。

对于仍然对此感到困惑的人们: 原来的海报有正确的答案。 问题是,与以前的koan不同,在完成这个特定的koan之前,必须解决整个“it”功能, 例如:

it("should create arrays", function() {
var emptyArray = [];
expect(typeof(emptyArray)).toBe('object');
expect(emptyArray.length).toBe(0);

var multiTypeArray = [0, 1, "two", function () { return 3; }, {value1: 4, value2: 5}, [6, 7]];
expect(multiTypeArray[0]).toBe(0);
expect(multiTypeArray[2]).toBe('two');
expect(multiTypeArray[3]()).toBe(3);
expect(multiTypeArray[4].value1).toBe(4);
expect(multiTypeArray[4]["value2"]).toBe(5);
expect(multiTypeArray[5][0]).toBe(6);
});

你需要停止过度思考(我也在这么做),只回答被问到的问题,即

var multiTypeArray = [0, 1, "two", function () { return 3; }, {value1: 4, value2: 5}, [6, 7]];
expect(multiTypeArray[0]).toBe(FILL_ME_IN); //What is Array's value at 0?

expect(multiTypeArray[2]).toBe(FILL_ME_IN); //What is Array's value at 2? (remember array key:value key starts at 0 then 1, 2 and so on)

expect(multiTypeArray[3]()).toBe(FILL_ME_IN); //What is Array's value at key 3 return?

expect(multiTypeArray[4].value1).toBe(FILL_ME_IN); //What is Array 4's value at key 0? (remember this is an array inside an array)

expect(multiTypeArray[4]["value2"]).toBe(FILL_ME_IN);//What is Array 4's value at value2? (remember this is an array inside an array)

expect(multiTypeArray[5][0]).toBe(FILL_ME_IN);//What is Array 5's value at key 0? (remember this is again an array inside an array)

我希望这有帮助

考虑对代码进行修改。它应该打印出一个堆栈跟踪,并告诉您测试代码中的哪一行产生了错误。我猜这不是因为行
expect(emptyArray.length).toBe(0)好眼力@huocp。JSKoans中这个问题的编写方式,看起来就像我上面代码的结尾一样。然而,在查看了打印出来的出错行之后,我意识到我应该继续编辑更多的行。谢谢