gpt4 book ai didi

javascript - 这段 JavaScript 代码有什么问题?返回错误

转载 作者:行者123 更新时间:2023-11-28 19:10:54 25 4
gpt4 key购买 nike

var number = prompt('Enter Number (as long as you want): '),
output = [],
sNumber = number.toString(),
lastDigit,
result,
i;

function result(number) {
for (i = 0, len = sNumber.length; i < len; i += 1) {
output.push(+sNumber.charAt(i));
}
lastDigit = output.slice(-1);

switch (lastDigit[0]) {
case 0:
return 'zero';
break;
case 1:
return 'one';
break;
.....etc some more cases.......
default: return 'not a valid number';
break;
}
}
jsConsole.writeLine('Last digit in English: ' + result);

为什么结果以所有代码结束,但没有一个 switch case 结束?我一直在努力把它修好。我只想打印 switch case 中的结果。

最佳答案

  1. 您实际上并没有调用结果函数
  2. 不要将函数和变量命名相同
  3. 如果您有 number 参数,请使用它,不要使用全局变量
  4. 如果您有return,则不需要break
  5. prompt 将返回一个字符串,因此不需要 toString()

像这样:

var sNumber = prompt('Enter Number (as long as you want): ');

function result(number) {
var output = [];
for (var i = 0; i < number.length; i ++) {
output.push(+number.charAt(i));
}
var lastDigit = output.slice(-1);

switch (lastDigit[0]) {
case 0:
return 'zero';
case 1:
return 'one';
default:
return 'not a valid number';
}
}

jsConsole.writeLine('Last digit in English: ' + result(sNumber));

Here is a working example

<小时/>

供您引用,您可以在没有循环的情况下获取字符串的最后一个字符:

var lastDigit = number[number.length-1]; 
// assuming it will always have at least 1 character, add validation to be sure

关于javascript - 这段 JavaScript 代码有什么问题?返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30734775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com