gpt4 book ai didi

javascript - 如何循环遍历嵌套数组,然后使用 Javascript 以预定义的顺序存储输出

转载 作者:行者123 更新时间:2023-12-01 23:34:25 27 4
gpt4 key购买 nike

编辑 18.01.21(查看 bolt 更改)

我在寻找循环遍历嵌套数组然后以所需顺序存储输出的方法时遇到问题。你能帮我想出一种方法来完成这项工作,或者指出我做错了什么吗?

我想我在这个过程中遗漏了几个步骤。例如,在某个时候打破内部循环并临时存储我的数据。但是,我不确定在什么时候......重要的是,该代码旨在用于 Google Apps 脚本

我使用的玩具数据如下所示:我在我的玩具数据中添加了另一种类型的关键字——“criss cross”和“bob ross”

var keywords =  [ [ ["claude"],["clair"],["carl"], ["criss cross"] ],
[ ["brad"],["bob"],["bill"] ["bob ross"] ] ];

我希望实现的输出如下所示:

[ [ [ '[claude] '],[ '"claude"' ],[ '+claude' ] ],
[ [ '[clair]' ],[ '"clair"' ],[ '+clair' ] ],
[ [ '[carl]' ],[ '"carl"' ],[ '+carl' ] ],
[ [ '[criss cross]' ],[ '"criss cross"' ], [ '+criss +cross' ] ],
[ [ '[brad]' ],[ '"brad"' ],[ '+brad' ] ],
[ [ '[bob]' ],[ '"bob"' ],[ '+bob' ] ],
[ [ '[bill]' ],[ '"bill"' ],[ '+bill' ] ],
[ [ '[bob ross]' ],[ '"bob ross"' ], [ '+bob +ross' ] ] ]

但是,我创建的输出如下:

[ [ [ '[claude]' ],[ '[clair]' ],[ '[carl]' ],[ '[brad]' ],[ '[bob]' ],[ '[bill]' ] ],
[ [ '"claude"' ],[ '"clair"' ],[ '"carl"' ],[ '"brad"' ],[ '"bob"' ],[ '"bill"' ] ],
[ [ '+claude' ],[ '+clair' ],[ '+carl' ],[ '+brad' ],[ '+bob' ],[ '+bill' ] ] ]

这是我使用的代码:

var keywords =  [[["claude"],["clair"],["carl"]],
[["brad"],["bob"],["bill"]]];

var keywords = [].concat.apply( [], keywords );
const PERMUTATION = function permuation( item ) {
var exact = [];
var phrase = [];
var modyfied = [];

for( let i = 0 ; i < item.length ; i++ ) {

var output1 = "[" + item[i] + "]";
exact.push([output1]);

var output2 = '"' + item[i] + '"';
phrase.push([output2]);

var temp = [item[i][0].split(" ").map( i => "+" + i ).join(" ")];
modyfied.push(temp);
}
return new Array( exact, phrase, modyfied ) ;
}

var output = PERMUTATION(keywords);
console.log(output)

最佳答案

您可以展平数组并映射所需的样式。

const
keywords = [[["clau de"], ["clair"], ["carl"]], [["brad"], ["bob"], ["bill"]]],
result = keywords
.flat(Infinity)
.map(v => [`[${v}]`, `"${v}"`, v.split(' ').map(v => `+${v}`).join(' ')].map(v => [v]));

console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 如何循环遍历嵌套数组,然后使用 Javascript 以预定义的顺序存储输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65781608/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com