題目描述
為 array 物件新增乙個去除重複項的方法
示例1
輸入
[false, true, undefined, null, nan, 0, 1, {}, {}, 『a』, 『a』, nan]輸出
[false, true, undefined, null, nan, 0, 1, {}, {}, 『a』]一道很有意思的題目,注意點很多。。。
首先: {}和{}是不相等的,nan和nan是不相等的,而示例中是排除了多個nan,只剩下乙個,而{}可以保留多個,所以通過flag和typeof雙重關卡來控制。
array.prototype.
uniq
=function()
}else}}
return resarr;
}
為 Array 物件新增乙個去除重複項的方法
思路 第一步 先定義乙個空陣列用來存數值 var a 第二步 利用這個條件判斷 a indexof this i 1 此條件成立,就將當前陣列值放在空陣列a中 a push this i 不過這裡有乙個太特殊的nan,nan nan,利用indexof 方法不成立f,所以這裡我們需要做個判斷 if ...
為Array物件新增乙個去除重複項的方法
false,true,undefined,null,nan,0,1,a a nan uniq false,true,undefined,null,nan,0,1,a array.prototype.uniq function else return arr 我們只需要在陣列上直接呼叫 uniq 方法...
牛客 為 Array 物件新增乙個去除重複項的方法
關鍵是indexof的用法 indexof是判斷resarr陣列中的值和當前的值有沒有相同的,如果有相等的會返回那個位置,沒有相同的返回 1,這裡返回 1的意思是沒有相同的,也就是resarr陣列裡還沒有當前的數。再之後再遇到有相同的就不會返回 1了,也就不會繼續執行if裡面的了。array.pro...