gpt4 book ai didi

javascript - 如何在替换列表中的值时修复 "undefined"项目

转载 作者:行者123 更新时间:2023-12-02 23:09:12 26 4
gpt4 key购买 nike

目标:识别列表 1 和列表 2 中哪些值相等,并用列表 3 中的随机单词替换这些值,最后需要打印修改后的列表 2。

cconst list1 = [
'AAAAAA',
'BBBBBB',
'CCCCCC',
'DDDDDD',
'EEEEEE'
];

const list2 = [
'EEEEEE',
'111111',
'BBBBBB',
'222222',
'333333',
'CCCCCC',
'444444',
'DDDDDD',
'555555'
];
const list3 = [

'666666',
'777777',
'888888',
'999999'
];

我尝试解决问题:

list2.forEach((hash => (a, i, aa) => {
if (hash.has(a)) {
aa[i] = list3[i]
})(new Set(list2)));


console.log(list2);

我得到的输出:

[ '666666',
'777777',
'888888',
'999999',
undefined,
undefined,
undefined,
undefined,
undefined ]

有什么办法可以解决这个问题吗?谢谢;)

最佳答案

使用您想要的任何随机生成器来获取 list3 中的值(易于研究)。

代码中的问题之一是您超出了 list3 的长度,这导致了 undefined

以下仅使用较大数组索引与 list3 长度相比的模。

const res = list2.map((el,i) => list1.includes(el) ? list3[i % list3.length] : el);

console.log(res);
<script>
const list1 = [
'AAAAA',
'BBBBB',
'CCCCC',
'DDDDD',
'EEEEEE'
];

const list2 = [
'EEEEEE',
'111111',
'BBBBBB',
'222222',
'333333',
'CCCCCC',
'444444',
'DDDDDD',
'555555'
];

const list3 = [
'666666',
'777777',
'888888',
'999999'
];
</script>

关于javascript - 如何在替换列表中的值时修复 "undefined"项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57450684/

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