gpt4 book ai didi

javascript - 在另一个 ForEach 中创建一个 forEach

转载 作者:行者123 更新时间:2023-12-03 02:21:32 30 4
gpt4 key购买 nike

我必须从 json 文件(实际上是 2 个 json 文件)执行 ForEach,因此我执行 2 forEach,代码是

<head>
<style>
table {
font-family: arial, sans-serif;
border-collapse: collapse;
width: 100%;
}

td, th {
border: 1px solid #dddddd;
text-align: left;
padding: 8px;
}

tr:nth-child(even) {
background-color: #dddddd;
}
</style>
</head>
<body>

<h2>HTML Table</h2>

<table>
<tr>
<th>Company</th>
<th>Contact</th>
<th>Country</th>
</tr>


<% alist.forEach(function(alist_items){%>

<% alist_b.forEach(function(alist_items_b){%>
<%if(alist_items_b.AY==alist_items.CI){ %>
<tr>
<td bgcolor="#FF0000"><%= JSON.stringify(alist_items_b) %></td>
</tr>
<% }else{ %>
<tr>
<td><%= JSON.stringify(alist_items_b) %></td>
<% } %>
</tr>

<% }) %>
<% }) %>
</table>

json 文件是:

[
{
"CI": "10"
},
{
"CI": "11"
},
{
"CI": "12"
},
{
"CI": "13"
},
{
"CI": "14"
},
{
"CI": "15"
},
{
"CI": "16"
},
{
"CI": "17"
},
{
"CI": "18"
},
{
"CI": "19"
},
{
"CI": "20"
}
]

[\[
{
"AY": "10"
},
{
"AY": "11"
},
{
"AY": "12"
},
{
"AY": "13"
},
{
"AY": "14"
}

我需要以红色显示重复值,通常还有其他值,但是您如何在 1 中看到图片中,其他值是重复多少次。我只需要向其他人展示一次值(value)观

谢谢

最佳答案

好吧!首先,我们将两个对象数组合并为一个。其次,迭代合并的数组并检查重复值(它的工作方式类似于 HashMap )。第三,在每个对象中插入一个名为 colorRed 的新属性(它指示是否将重复行着色为红色)。

JS 变化:

var a = []; //first array of object
var b = []; //second array of object
Array.prototype.push.apply(a, b); //merging both the arrays

//finding the number of occurences of all the values
//variable would hold all the indexes of the array having same value
var c = new Object();
a.forEach(function (value, index) {
var vArr = Object.keys(value);
if (!c.hasOwnProperty(value[vArr[0]]))
c[value[vArr[0]]] = [];
c[value[vArr[0]]].push(index);
c[value[vArr[0]]].forEach(function (cValue, cIndex) {
if (c[value[vArr[0]]].length > 1)
a[cValue].colorRed = true;
else
a[cValue].colorRed = false;
});
});

现在,在 JS 中进行更改后。模板中迭代的数组只是包含是否将行涂成红色的对象数组。为了更好地理解,您可以简单地执行 console.log(a); 并检查最终的数组结构。

HTML 更改:

<% a.forEach(function(val, ind) { %>
<tr>
<%if (val.colorRed) { %>
<td bgcolor="#FF0000">
<% } else { %>
<td>
<% } %>
<%= JSON.stringify(val) %></td>
</tr>
<% }) %>

关于javascript - 在另一个 ForEach 中创建一个 forEach,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49136659/

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