亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

檢查數組是否有除一個元素之外的重復元素Javascript Dice

檢查數組是否有除一個元素之外的重復元素Javascript Dice

四季花海 2023-06-15 17:10:01
我正在努力實現一個函數來簡單地檢查數組是否具有除了一個之外的所有相同數字。我現在已經嘗試了幾種方法,但我覺得我無處可去。這樣做的原因是對于骰子游戲,用戶可以選擇多個骰子,然后擲骰子并為重復的數字和其他序列等獲得獎勵積分。我認為檢查數組是否除了數組中的一個元素之外的所有重復元素會很簡單,但我無法讓它工作。我在想一些事情,比如檢查數組中的元素,并通過使用 array.length-1 來查看所有元素是否除了一個之外都是相同的值。示例 dice 值為 true 的值:[1,2,2,2] or [4,4,2,4] (for 4 dice) //true[1,1,6] (for 3 dice )//true我試過這樣的事情:function countDuplicate(array){  var count=0;  var sorted_array=array.sort();  for (let i=1;i<sorted_array.length;i++)  {    if (sorted_array[i] ==sorted_array[i+1]){        count+=count;}  }  if (count===sorted_array.length-1){    return true;  }  return false;}但它似乎不起作用。希望這足夠抱歉我是 javascript 和 stackoverflow 的新手。
查看完整描述

4 回答

?
qq_笑_17

TA貢獻1818條經驗 獲得超7個贊

實現這一點的一種方法是構建數組中每個值的計數數組。然后可以檢查此列表以確保其長度為 2,最小計數為 1:


const countDuplicate = (array) => {

  let counts = Object.values(array.reduce((c, v) =>

    (c[v] = (c[v] || 0) + 1, c), {}));

  return counts.length == 2 && Math.min(...counts) == 1

}


console.log(countDuplicate([1,2,2,2]));

console.log(countDuplicate([4,4,2,4]));

console.log(countDuplicate([1,1,6]));

console.log(countDuplicate([2,2,4,4]));

console.log(countDuplicate([1,2]));


查看完整回答
反對 回復 2023-06-15
?
BIG陽

TA貢獻1859條經驗 獲得超6個贊

這是使用Set它比較原始數組和刪除重復數組的長度:


const hasDuplicates = (arr = []) => {

  const noDuplicates = [...new Set(arr)];


  return arr.length !== noDuplicates.length;

};


console.log(hasDuplicates([1,2,3]));

console.log(hasDuplicates([1,2,3,1]));


查看完整回答
反對 回復 2023-06-15
?
夢里花落0921

TA貢獻1772條經驗 獲得超6個贊

如果您只是想檢查除了數組中的一個值之外所有值是否都相同,您可以使用它。


function oneMultiple(array) {

  const set = new Set(array)


  return set.size === 2

}


查看完整回答
反對 回復 2023-06-15
?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

如果你想簡單地使用一個值使用這個


function oneMultiple(array) {

  const set = new Set(array)


  return set.size === 2

}


查看完整回答
反對 回復 2023-06-15
  • 4 回答
  • 0 關注
  • 152 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號