【发布时间】:2022-11-18 16:40:36
【问题描述】:
所以我从服务器接收到DA477B5,35,25]形式的数据
FA65EE2,35,171]
所以数据不断接收所以在 XML 的帮助下我得到了这些数据
setInterval(function() {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var myObj = this.responseText;
snifferOnServer(myObj);
}
};
xhr.open("GET", "http://192.168.43.154/wifimac", true);
xhr.send();
}, 7000);
而 myobj 包含所有这样的数据 myObj = "DA477B5,35,25]FA65EE2,35,171]......"
所以我使用了一个拆分函数并将“]”这个字符作为目标。
function snifferOnServer(x)
{
let obj = x.split(']');
//console.log(obj);
for (let i = 0; i < obj.length; i++) {
mac = obj[i];
macIdData = mac.split(",");
let row = myTable.insertRow();
let cell0 = row.insertCell(0);
let cell1 = row.insertCell(1);
let cell2 = row.insertCell(2);
let cell3 = row.insertCell(3);
cell0.innerHTML = i;
cell1.innerHTML = macIdData[0];
cell2.innerHTML = macIdData[1];
cell3.innerHTML = macIdData[2];
}
}
所以Output是数组的形式。逗号被留下,每个数据集成为一个数组
DA477B5,35,25 (1st array)
FA65EE2,35,171 (2nd array)
所以现在我再次拆分一个逗号并开始在表格上显示。它看起来像这样
但是数据开始重复,我不知道我应该把逻辑放在哪里,这样数据就不会重复。如果 macIdData[0] 存在,它不应该显示在表上;
我想知道如何添加逻辑来检查数据是否已存在于表中,如果是,则不应再次将其放在表中。
【问题讨论】:
标签: javascript arrays