如果我有一个 JavaScript 数组:
a = ["12", "34", "56", "78"];
我想像这样制作一个新的二维数组:
b = [ ["12345678"], ["34567812"], ["56781234"], ["78123456"] ];
我知道这应该很简单,但我就是想不通……今天我的大脑有点慢……:/
如果我有一个 JavaScript 数组:
a = ["12", "34", "56", "78"];
我想像这样制作一个新的二维数组:
b = [ ["12345678"], ["34567812"], ["56781234"], ["78123456"] ];
我知道这应该很简单,但我就是想不通……今天我的大脑有点慢……:/
在不同的枢轴位置加入字符串。
n = [];
for(i = 0; i < a.length; i++){
n.push(a.slice(i).join("") + a.slice(0,i).join(""));
}
这输出:
[ "12345678", "34567812", "56781234", "78123456" ]
我不确定在输出中嵌套单个元素数组是否是一个错误,但如果需要,只需在push
.
您可以像这样map
结合使用concat
:
var newA = a.map(function() {
var copy = a.slice();
return [copy.concat(copy.splice(0, arguments[1])).join('')];
});
// => [ ["12345678"], ["34567812"], ["56781234"], ["78123456"] ];