JavaScript 中的反向数字
Reverse Number in JavaScript
我正在尝试反转 JavaScript 中的随机整数。我正在使用此代码:
'use strict';
function reverse_a_number(n)
{
n = n + '';
return n.split('').reverse().join('');
}
print(reverse_a_number(+gets())); //**+gets()** is like scanner.nextInt in Java and **print();** work's like console.log(); in JS.
如果数字不是一个大整数,这很有效。
对于我的判断中的第一个测试,代码工作正常:
Input Output
256 652
123.45 54.321
但是对于 BI 我得到了错误的答案:
也许最好的方法是将数组转换为字符串...有什么建议吗?
原因是您将 get()
输入转换为数字。不要这样做,使用一个字符串,我想,你会收到它。示例:
'use strict';
function gets() {
return '52387456983765.98364593786'
}
function reverse_a_number(n)
{
n = n + '';
return n.split('').reverse().join('');
}
console.log(reverse_a_number(+gets())); // "489.56738965478325"
function reverse_a_number_new(n)
{
return n.split('').reverse().join('');
}
console.log(reverse_a_number_new(gets())); // "68739546389.56738965478325"
阅读更多关于 JS 中的浮点数:https://javascript.info/number#imprecise-calculations
我正在尝试反转 JavaScript 中的随机整数。我正在使用此代码:
'use strict';
function reverse_a_number(n)
{
n = n + '';
return n.split('').reverse().join('');
}
print(reverse_a_number(+gets())); //**+gets()** is like scanner.nextInt in Java and **print();** work's like console.log(); in JS.
如果数字不是一个大整数,这很有效。
对于我的判断中的第一个测试,代码工作正常:
Input Output
256 652
123.45 54.321
但是对于 BI 我得到了错误的答案:
也许最好的方法是将数组转换为字符串...有什么建议吗?
原因是您将 get()
输入转换为数字。不要这样做,使用一个字符串,我想,你会收到它。示例:
'use strict';
function gets() {
return '52387456983765.98364593786'
}
function reverse_a_number(n)
{
n = n + '';
return n.split('').reverse().join('');
}
console.log(reverse_a_number(+gets())); // "489.56738965478325"
function reverse_a_number_new(n)
{
return n.split('').reverse().join('');
}
console.log(reverse_a_number_new(gets())); // "68739546389.56738965478325"
阅读更多关于 JS 中的浮点数:https://javascript.info/number#imprecise-calculations