Javascript 为什么它打印日志两次,而我的代码只允许一次
我在做这个代码战争卡塔: 请检查此图片: 我的代码:Javascript 为什么它打印日志两次,而我的代码只允许一次,javascript,Javascript,我在做这个代码战争卡塔: 请检查此图片: 我的代码: 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 -
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高手请帮助,谢谢。您的解决方案通过了第一次测试,但没有通过其余测试。因为rest测试是为了防止像您这样的解决方案通过而设计的。尽量不要修改节点本身。
您的日志出现了两次,因为测试将使用相同的节点运行两次,并且您尝试使用.sign属性标记节点,因此在第二次断言时总是会失败。也应该显示测试。末尾附加了一张图片。图片仅显示输出,而不显示输入数据。函数是如何调用的?可能测试使用不同的值多次调用您的函数。我不知道参数到底是什么。我开始怀疑这个kata中有一个bug…顺便说一句,我已经编辑了图片。非常感谢你的回答,我尝试以一种新的方式解决。非常感谢。