我需要调用以下函数cross
4次,对于x
和y
变量的所有排列,值为1和-1;
我的方法:
var p = [-1, 1];
p.forEach(function(x) {
p.forEach(function(y) {
cross(x, y);
});
});
Run Code Online (Sandbox Code Playgroud)
有没有更短的方法这样做?
调用函数会产生一些开销。例如,将返回指针放在堆栈上。使用两个 for 循环而不是回调 forEach 可能会稍微快一些。
var p = [-1, 1];
for (var x = 0; x < p.length; x++) {
for (var y = 0; y < p.length; y++) {
cross(p[x], p[y]);
}
}
Run Code Online (Sandbox Code Playgroud)