Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript js添加脚本工作不正常_Javascript_Function_Math_Addition - Fatal编程技术网

Javascript js添加脚本工作不正常

Javascript js添加脚本工作不正常,javascript,function,math,addition,Javascript,Function,Math,Addition,以下代码应打印x和y的总和。它在W3编辑器上工作,但不是我的Sublime?我不明白为什么 函数添加(){ var x=提示(“输入一个数字”); var y=提示(“输入另一个数字”); var a=x+y; 警报(a); } 添加(); 成功 function add () { var x =parseInt(prompt("Enter a number."),10); var y = parseInt(prompt("Enter another number."),10

以下代码应打印x和y的总和。它在W3编辑器上工作,但不是我的Sublime?我不明白为什么

函数添加(){
var x=提示(“输入一个数字”);
var y=提示(“输入另一个数字”);
var a=x+y;
警报(a);
}

添加();
成功

function add () {
    var x =parseInt(prompt("Enter a number."),10);
    var y = parseInt(prompt("Enter another number."),10);
    if ( !isNaN(x) && !isNaN(y) )
    {
      var a = x + y;
      alert(a);
    }
    else
    {
      alert("One of the numbers is not valid");
    }
}
您需要首先将从提示符接收到的字符串解析为整数。

function add () {
    var x =parseInt(prompt("Enter a number."),10);
    var y = parseInt(prompt("Enter another number."),10);
    if ( !isNaN(x) && !isNaN(y) )
    {
      var a = x + y;
      alert(a);
    }
    else
    {
      alert("One of the numbers is not valid");
    }
}
您需要首先将从提示符接收的字符串解析为整数。

您可以使用:

function add () {
    var x = Number(prompt("Enter a number."));
    var y = Number(prompt("Enter another number."));
    var a = x + y;
    alert(a);
}
您可以使用:

function add () {
    var x = Number(prompt("Enter a number."));
    var y = Number(prompt("Enter another number."));
    var a = x + y;
    alert(a);
}

我认为这是因为prompt返回类型string。尝试使用

parseInt()
功能。所以

var x = parseInt(prompt("Enter a number."));

我认为这是因为prompt返回类型string。尝试使用

parseInt()
功能。所以

var x = parseInt(prompt("Enter a number."));

值是字符串,因此
+
运算符将其视为字符串串联。使用
parseInt()
生成整数,然后进行加法:

函数添加(){
//最好将基数包含在parseInt中
var x=parseInt(提示(“输入一个数字”),10);
var y=parseInt(提示(“输入另一个数字”),10);
//NaN的快速脏检查
如果(!(x!=x)和(&!(y!=y)){
var a=x+y;
警报(a);
}否则{
警报(“两个输入都必须是有效整数!”);
}
}

添加()值是字符串,因此
+
运算符将其视为字符串串联。使用
parseInt()
生成整数,然后进行加法:

函数添加(){
//最好将基数包含在parseInt中
var x=parseInt(提示(“输入一个数字”),10);
var y=parseInt(提示(“输入另一个数字”),10);
//NaN的快速脏检查
如果(!(x!=x)和(&!(y!=y)){
var a=x+y;
警报(a);
}否则{
警报(“两个输入都必须是有效整数!”);
}
}


添加()
提示符
始终返回字符串。在进行数学运算之前,必须将返回值转换为数字。在这种情况下,JS不会执行自动类型强制,因为
+
运算符也用于连接字符串。@teemu ParseInt方法?那,或者
parseFloat
或者一元
+
或者
Number
构造函数。您能解释一下区别吗?所有4个都工作。在引擎盖下必须有差异(使用的字节,等等)。@chignon这里是对JavaScript
Number
wrapper对象及其属性和方法的完整引用:
prompt
始终返回字符串。在进行数学运算之前,必须将返回值转换为数字。在这种情况下,JS不会执行自动类型强制,因为
+
运算符也用于连接字符串。@teemu ParseInt方法?那,或者
parseFloat
或者一元
+
或者
Number
构造函数。您能解释一下区别吗?所有4个都工作。在引擎盖下一定会有差异(使用的字节等)。@chignon这里有对JavaScript
Number
wrapper对象及其属性和方法的完整引用:不要忘记基数。也不要忘记检查
NaN
@j08691和War10ck,感谢您指出,为NaN做了更改我有困难…请举例?@chignon NaN代表非数字
isNaN
检查传递的参数是否为数字。不要忘记基数。也不要忘记检查
NaN
@j08691和War10ck,感谢您指出,对NaN进行更改检查我很难理解…例如:@chignon NaN代表非数字
isNaN
检查传递的参数是否为数字。