[英]Why does this code only work in certain JS executors?
此代碼采用整數,並返回存在的1的數量。
function countOnes(i) { let str = i.toString(); let ones = 0; for(let x = 0; x < i.length; x++) { if(str.charAt(x) === '1') ones++; } return ones; } console.log(countOnes(111000));
但是它似乎只在某些JavaScript執行程序中起作用。 如果將此代碼輸入到p5.js或Mozilla MDN中 ,我將收到所需的輸出3
。
但是,如果我在瀏覽器和其他一些網站中使用控制台進行模擬,則每個給定值都將返回0
。
為什么會這樣呢?
嘗試這個:
function countOnes(num) {
var counter = 0;
var numsArray = Array.from((num + ''))
numsArray.forEach(num => {
return (num == 1)? counter++ : ''
})
return counter
}
console.log(countOnes(1110010)); // 4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.