JavaScript代码无限循环

qazerty23

我正在制作一个函数,该函数需要一个值数组并返回一个仅包含唯一值的数组。例如:

var strings = ["audi", "audi", "bmw", "bmw","bmw","bmw","audi","audi", "8-()"];

结果应为:

alert( unique(strings) ); // audi, bmw, 8-()

我不明白为什么我的函数会陷入无限循环,有人可以帮忙吗?这是函数:

function unique(arr) {
   var result = [];
   result.push(arr[0]);

   for (var i = 1; i < arr.length; i++) {
       for (var j = 0; j < result.length; j++) {
           if  (result[j] != arr[i]) {
              result.push(arr[i]); 
           }
       }
   }

   return result;
} 
莫特萨·图拉尼(Morteza Tourani)

不需要嵌套循环。您可以使用Array.prototype.indexOfArray.prototype.includes方法检查结果中的可用值

var strings = ["audi", "audi", "bmw", "bmw", "bmw", "bmw", "audi", "audi", "8-()"];

function unique(arr) {
  var result = [];
  result.push(arr[0]);

  for (var i = 1; i < arr.length; i++) {
    if (result.indexOf(arr[i]) === -1)
      result.push(arr[i]);


  }
  return result;
}
console.log(unique(strings))

顺便说一句厨师建议是:

var strings = ["audi", "audi", "bmw", "bmw", "bmw", "bmw", "audi", "audi", "8-()"];
console.clear();

var result = strings.filter(function(s){ return this[s] ? false : (this[s] = true); }, Object.create(null))

console.log(result);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

代码进入无限循环

来自分类Dev

为什么我的JavaScript代码中可能存在无限循环?

来自分类Dev

为什么facebook javascript登录代码会导致无限循环?

来自分类Dev

为什么我的JavaScript代码中可能存在无限循环?

来自分类Dev

JavaScript陷入无限循环

来自分类Dev

Javascript事件使无限循环

来自分类Dev

停止无限 Javascript 循环

来自分类Dev

代码正在挂起,无限循环?

来自分类Dev

我的代码导致无限循环

来自分类Dev

JavaScript做/循环无限循环

来自分类Dev

Javascript无限循环更新实体

来自分类Dev

JavaScript游戏中的无限循环

来自分类Dev

Javascript 中的意外无限循环

来自分类Dev

javascript模糊焦点无限循环

来自分类Dev

C代码调用汇编:无限循环

来自分类Dev

为什么此代码无限循环?

来自分类Dev

插装代码导致无限递归循环

来自分类Dev

#include的无限循环会阻止代码生成

来自分类Dev

在无限While循环后运行代码

来自分类Dev

为什么代码进入无限循环

来自分类Dev

无限循环?看似无害的代码造成的

来自分类Dev

JavaScript中的无限循环-While循环

来自分类Dev

JavaScript中的无限循环-While循环

来自分类Dev

JavaScript嵌套While循环,无限循环

来自分类Dev

JavaScript Regex无限循环的某些模式

来自分类Dev

JavaScript Flood Fill算法陷入无限循环

来自分类Dev

如何进行无限循环?(滑块javascript)

来自分类Dev

JavaScript 99Bottles-无限循环

来自分类Dev

Javascript无限循环和递归错误