我正在做这个codewar kata:http://www.codewars.com/kata/52a89c2ea8ddc5547a000863/train/javascript
请查看此图片: kata instructions and my test result
我的代码:
function loop_size(node){
var n = 0;
while (!node.sign) {
node["sign"] = n;
n++;
node = node.next;
}
console.log('n: ' + n);
console.log('node.sign: '+ node.sign);
return n - node.sign;
}
但我的代码失败的原因是:价值不是预期的
我发现它打印日志两次,并且n和node.sign的值都修改为1,我无法弄清楚发生了什么,有人擅长javascript请帮忙,谢谢。
答案 0 :(得分:0)
您的解决方案通过了第一次测试,但没有通过其他测试。因为其余的测试旨在防止像你这样的解决方案通过。尽量不要修改节点本身。 您的日志出现了两次,因为测试意味着使用相同的节点运行两次,并且因为您尝试使用.sign属性标记节点,所以在第二个断言中它总是会失败。