gpt4 book ai didi

javascript - 使用第一个数组中的值填充对象中的第二个数组

转载 作者:行者123 更新时间:2023-11-28 15:00:57 24 4
gpt4 key购买 nike

我也有这样的情况

const links = {
ALLOWED1: [ 'some_path1' ],
ALLOWED2: [ 'some_path2' ]
}

但是我还想允许 ALLOWED2 上先前数组的路径,我已经尝试过

const links = {
ALLOWED1: [ 'some_path1' ],
ALLOWED2: [ ...links['ALLOWED1'], 'some_path2' ]
}

但这无效,因为链接尚未定义。当然我可以手动填充它,但宁愿找到更优雅的解决方案。

最佳答案

你可以用三行来代替

const links = {};
links.ALLOWED1 = [ 'some_path1' ];
links.ALLOWED2 = [ ...links['ALLOWED1'], 'some_path2' ];

console.log(links.ALLOWED2);

记住,const 只保持对对象的引用不变,而不是对象的内容。为此,您需要 Object.defineProperty

如果 allowed1 和 allowed2 的内容发生变化,我可能会考虑使用一个函数来获取它们。例如:links.all = () => [...links.ALLOWED1, ...links.ALLOWED2]。对我来说,这在代码中读起来会更清楚,除非非常清楚 allowed2 始终是 allowed1 的超集。

关于javascript - 使用第一个数组中的值填充对象中的第二个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40977546/

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