检查是否可以在javascript中成功完成数学运算(加法、乘法)?
给定一组表示加法运算中整数的特定“字符串”,如何知道javascript中的计算是否可行?比如说检查是否可以在javascript中成功完成数学运算(加法、乘法)?,javascript,Javascript,给定一组表示加法运算中整数的特定“字符串”,如何知道javascript中的计算是否可行?比如说 2+2(绝对可能) 200000000000-1(不可能) 2e50+2e60(不可能) 200000+5+40+300+2000+10000(可能) 这同样适用于乘法,几个整数,duable与否 2*2(可能) 3*2e200(可能) 4*-3e700(不可能) 打开浏览器错误控制台并查看这是怎么做的 "use strict"; var i, numbers=[ 2+2,
2+2
(绝对可能)
200000000000-1
(不可能)
2e50+2e60
(不可能)
200000+5+40+300+2000+10000
(可能)
这同样适用于乘法,几个整数,duable与否
2*2
(可能)
3*2e200
(可能)
4*-3e700
(不可能)打开浏览器错误控制台并查看这是怎么做的
"use strict";
var i,
numbers=[
2+2,
20000000000000000 - 1,
2e50 + 2e60,
200000 + 5 + 40 + 300 + 2000 + 10000,
2*2,
3*2e200,
4*-3e700
],
s=numbers.length;
for(i=0;i<s;i++){
console.log(
'The value of array index '+i+' is'+
((Number.isSafeInteger((numbers[i])))?'':' NOT')+
' Safe'
);
}
其中一些数字可能是准确的,但无法比较以确定哪个更大打开浏览器错误控制台并查看这是怎么做的
"use strict";
var i,
numbers=[
2+2,
20000000000000000 - 1,
2e50 + 2e60,
200000 + 5 + 40 + 300 + 2000 + 10000,
2*2,
3*2e200,
4*-3e700
],
s=numbers.length;
for(i=0;i<s;i++){
console.log(
'The value of array index '+i+' is'+
((Number.isSafeInteger((numbers[i])))?'':' NOT')+
' Safe'
);
}
其中一些数字可能是准确的,但无法比较以确定哪个更大eval(“1+1”)?我不是舒尔,如果它是那么简单…没有简单的答案。你在解决什么样的问题?Javascript是一种开发良好的脚本语言。所以从技术上讲,每一个计算都是可能的,只是如果你的方法是错误的,它就不会得到正确的解决方案?我不是舒尔,如果它是那么简单…没有简单的答案。你在解决什么样的问题?Javascript是一种开发良好的脚本语言。因此,从技术上讲,每一次计算都是可能的,只是如果你的方法是错误的,它将不会得到正确的解决方案。在编辑器中单击
,可以在这个pageNoScript的XSS过滤器内置的“stack snippet”控制台中运行。我只希望你不需要IE支持;)嗯,Number.isSafeInteger(2e200)==false
即使如OP所述,3*2e200(可能)
javascript:void(alert(2e200*3==2e200*3-1))
可以计算它,但它超出了javascript中的比较点,因此我们无法通过javascrpt验证它的准确性;它不是完美的,但它是我们能得到的最接近的;好吧,如果我们通过AJAX将其发送到服务器,我们可以在编辑器中单击
,并可以在这个pageNoScript的XSS过滤器内置的“stack snippet”控制台中运行,这给了我一些问题,希望您不需要IE支持;)嗯,Number.isSafeInteger(2e200)==false
即使如OP所述,3*2e200(可能)
javascript:void(alert(2e200*3==2e200*3-1))
可以计算它,但它超出了javascript中的比较点,因此我们无法通过javascrpt验证它的准确性;它不是完美的,但它是我们能得到的最接近的;如果我们通过AJAX将其发送到服务器,我们就可以