网站搜索

javascript - 函数用于显示数组中每个元素与每个其他元素一次


如何显示数组中每个元素与每个其他元素一次,但不与自身?

例如:

var myArray:any = "a b c d"

然后显示:

a,b
a,c
a,d

b,a
b,c
b,d

等等

答案#1

一个用于循环工作正常。

var myArray = "a b c d".split(' ');

for (let first of myArray) {
  for (let second of myArray) {
    if (first !== second) {
      console.log(`${first},${second}`)
    }
  }
}

答案#2

尝试

function f (arr) {
  arr.forEach(function(e) {
    arr.forEach(function(e2) {
      if (e === e2) return;
      var str = e + "," + e2;
      // print str
    });
  });
}

f("a b c d".split(' '));