我写了一个函数,如果前半个数字的和等于后半个数字的和,就必须返回。 我的代码怎么了? 谢谢你帮我。
function isLucky(n) {
var digits = (n).toString(10).split("").map(Number)
var k = digits.length;
var a = 0;
var b = 0;
for(let x = 0; x<k/2; x++){
a+=n[x];
}
for(let x = k/2; x<k; x++){
b+=n[x];
}
return (a===b);
}
不能访问数组之类数字的数字。 首先将其转换为字符串,然后使用扩展语法将其转换为数字数组。
function isLucky(n) {
var digits = [...(n).toString(10)]
var k = digits.length;
var a = 0;
var b = 0;
for(let x = 0; x<k/2; x++){
a += +digits[x];
}
for(let x = Math.floor(k/2); x<k; x++){
b += +digits[x];
}
return (a===b);
}