給出一個類數組,刪除要求的重複數據,返回新數組數組
destroyer([1, 2, 3, 1, 2, 3], 2, 3) should return [1, 1] destroyer([2, 3, 2, 3], 2, 3) should return [] destroyer(["tree", "hamburger", 53], "tree", 53) should return ["hamburger"]
1.類數組轉化成數組
2.雙重循環比較兩個數組的元素
3.刪除重複數據
4.剔除非Boolean數據函數
function destroyer(arr) { var args = Array.from(arguments).slice(1); for(var i=0; i<arr.length; i++) { for(var j=0; j<args.length; j++) { if(arr[i] === args[j]) { delete arr[i]; } } } return arr.filter(Boolean); } destroyer([1, 2, 3, 1, 2, 3], 2, 3);
1.類數組轉化成數組
2.fiter()方法返回不重複數組測試
function destroyer(arr) { var args = Array.from(arguments).slice(1); return arr.filter((val) => !args.includes(val)); } destroyer([1, 2, 3, 1, 2, 3], 2, 3);
arguments(類數組轉換成數組),如下方法均可以 let args = Array.prototype.slice.call(arguments); let args = [].slice.call(arguments); let args = Array.from(arguments); let args = [...arguments];
arr.filter(callback[, thisArg])
參數:this
描述:prototype
有其餘好的方法或思路的道友,不妨在沙發區神交一番。code