如果我只想在提示窗口中输入整数,那么在JavaScript中使用+prompt
而不是普通的prompt
是否好?在JavaScript标准/规则中是否有关于+prompt
的说明?
如果我只想在提示窗口中输入整数,那么在JavaScript中使用+prompt
而不是普通的prompt
是否好?在JavaScript标准/规则中是否有关于+prompt
的说明?
var a = prompt("Please enter a number");
console.log(a);
typeof(a);
例如:- 2
var a = +prompt("Please enter a number");
console.log(a);
typeof(a);
现在当您控制台输出变量 a 和 typeof
a 的 eg(2) 时,结果会有所不同,因为我们在提示前添加了+。所以这次我们将提示输入值作为数字而不是字符串。尝试一下,您就会明白我在说什么。
+promt("...")
的效果是将 promt 命令的结果转换为数字。
这是一个不错的技巧,但并不是一个干净的解决方案。
我建议将用户输入分配给一个变量,然后检查它,如果不符合要求,则抛出异常或错误消息。
var
input = prompt("Please enter a positive number"),
inputNum = parseInt(input, 10);
if (isNaN(inputNum) || inputNum < 1)
alert("You did not enter a positive number.");
+"-22.134"
的评估结果是 -22.134
。 - Quentin因此,在任何数据类型之前放置一个+
将其转换为数字。
我尝试过这个:
typeof(+"100") ==> number
typeof(+"12.34") ==> number
typeof(+true) ==> number
typeof(+false) ==> number
undefined
x = +undefined
typeof(x) ==> Number whilst value of variable x is NaN
parseFloat(undefined)
的结果是NaN,就像 parseFloat('afije')
一样。但是NaN的类型是数字。 - RoboticRenaissance+prompt()
只是在prompt()
前加上一个+
,就像写+"3"
或者+"10"
一样。它只是尝试将结果转换为数字。
+prompt
是什么? - Sandeep Nayak