Javascript 生成阵列的免费复制版本
生成阵列的免费复制版本。函数应该处理使用排序数组的迭代器。所以我可以做第一部分,但我不知道如何使用isSorted或迭代器Javascript 生成阵列的免费复制版本,javascript,Javascript,生成阵列的免费复制版本。函数应该处理使用排序数组的迭代器。所以我可以做第一部分,但我不知道如何使用isSorted或迭代器 _.uniq = function(array, isSorted, iterator) { var unique = []; for (var i = 0; i < array.length; i++) { var ele = array[i]; if (unique.indexOf(ele) === -1) { unique
_.uniq = function(array, isSorted, iterator) {
var unique = [];
for (var i = 0; i < array.length; i++) {
var ele = array[i];
if (unique.indexOf(ele) === -1) {
unique.push(ele);
}
}
return unique;
};
\ uq.uniq=函数(数组、isSorted、迭代器){
var-unique=[];
对于(var i=0;i
如果您愿意创建一个新的数组,这是一种简单而优雅的方法,不需要排序,并且可以忽略IE11
let fruits = ['pear','apple','banana','orange','apple','mango','banana','pear'];
//https://www.codementor.io/tips/8243973127/how-to-remove-duplicates-within-a-javascript-array-using-es6-in-just-one-line
//Array.from & new Set not supported in IE11, MDN has details.
let fruits_without_duplicates = Array.from(new Set(fruits));
console.log(fruits_without_duplicates); //["apple", "banana", "orange", "mango"]
您可以从数组中创建一个JavaScript,然后从集合中获取一个数组。集合保存唯一的值
let fruits = ['pear','apple','banana','orange','apple','mango','banana','pear'];
let uniq_fruits = [... new Set(fruits)];
console.log(uniq_fruits); //[ 'pear', 'apple', 'banana', 'orange', 'mango' ]
如果对数组进行排序,您只需将每个元素与前一个元素进行比较,而不是在结果数组中搜索它。您所说的“使用排序数组的迭代器”是什么意思?什么是排序和迭代器?