我的输入始终是 String 。该字符串可以包含整数或文本:
intputString = "1";
或
inputString = "hey";
我想只将那些包含整数的输入转换为 Number 。否则,输入需要保持不变。
例如,如果我有一个整数:
inputString = "288"; // <-- Make the conversion
desiredOutput = 288;
如果我有非整数文本:
inputString = "hey"; // <-- Don't make the conversion and leave it as is
desiredOutput = "hey";
我使用的是Numbers(inputString)
,但这会将文本值转换为NaN
。
如何实现此转化?
编辑:重复问题的答案都没有回答这个问题。
答案 0 :(得分:3)
只需将输入转换为Number
即可。如果结果为NaN
,则返回原始字符串,否则返回已转换的值。
function convert(input) {
if(input === "0") {
return 0;
}
return Number(input) || input;
}
console.log(convert("288"));
console.log(convert("hey"));
console.log(convert("0"));
console.log(convert(""));
&#13;
答案 1 :(得分:0)
也许是这样的:
if(!isNaN(inputString))
output = inputString;
else
//Input is not a number