gpt4 book ai didi

javascript - 如何将函数应用于 Javascript 列表子列表中的每个项目?

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

以下函数循环遍历列表。如果子列表中的特定项目具有空白值,则会将其替换为“无”。

lst.forEach(function (d) {

if(d.thefirstcolumn){} else {d.thefirstcolumn = "None"};
if(d.somethingelse){} else {d.somethingelse = "None"};
if(d.random){} else {d.random = "None"};
if(d.cold){} else {d.cold = "None"};
if(d.cole){} else {d.cole = "None"};
if(d.colf){} else {d.colf = "None"};
if(d.colg){} else {d.colg = "None"};
if(d.colh){} else {d.colh = "None"};
});

这不太可扩展,因为我必须引用每个子列表中的每个项目,因此我创建一个函数来对所有项目执行此操作,这样我就不必引用。

例如,它会像下面这样简短,它将实现与前面的代码相同的结果,并对列表的每个子列表中的每个项目执行此操作。

lst.forEach(function (d) {
if(d.col){} else {d.col = "None"};
});

上面,我的意思是 d.col 指的是 d.cola、d.colb、d.colc、d.cold 和所有其他项目。我该如何完成这项工作?

额外的问题是,仅当子列表中的项目是数字时,我如何应用以下函数,否则仅应用前一个函数?

例如,它将在子列表的每个项目上尝试此操作

d.col = parseInt(d.col, 10);

否则,如果该项目不是数字,它将运行以下内容

if(d.colh){} else {d.colh = "None"}

最佳答案

做一些像下面这样的事情

var keys = ['firstCol','secondCol','cola'];

lst.forEach(function (d) {
keys.forEach(function(key){
d[key]=d[key]||"None";
})
});

因此,它将获取每个对象并检查该对象,如果key不存在,则不为该键分配任何内容。

关于javascript - 如何将函数应用于 Javascript 列表子列表中的每个项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25340107/

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