我从服务器得到一个字符串列表,
let a="18647AF0D0,59,6]1864726D1,65,5]1864726A,85,5]1864726A,75,5]";
和每一组数据,我添加一个右括号,这意味着数据集现在是完整的。
所以数据是这样的
mac = "18647AF0D0";
TTL = "59"
TIME = "6"
服务器继续发送数据,这些数据被添加到变量a
现在我需要在一个HTML网站的web服务器上显示这个数据,这个网站已经设计好了。
所以问题是这里当服务器发送时,有时它发送相同的mac值与更新的TTL和TIME
1864726A,85,5]1864726A,75,5]
在这里,如果你看到,我得到相同的mac值,所以我想做的是,如果mac值已经存在,那么只需更新TTL和TIME值在相同的位置;它不应该创建另一个条目。
所以我试图使用拆分函数将这个值存储到一个数组中,但是它变得太复杂了,所以我被困在这里。
这是我的html页面:- https://codepen.io/kanxababu/pen/KKeZKQZ
我没听懂你的问题但如果你想用","分隔数组和"]";方法如下:
const result = a.split("]").join("").split(",")
这应该为您工作,只需将其添加到您现有的代码中。它会返回一个数组数组的位置和数组中元素的位置。我认为可能有一种语法上更好的方法来执行if语句,但我不确定,无论如何它都会工作。
function twoDIndexOf (myArray, element) {
let index
for (let i=0;i<myArray.length-1;i++){
if(myArray[i][0].indexOf(element) != -1) {
return [i, myArray[i][0].indexOf(element)]
}
}
}
console.log(twoDIndexOf(array, '1864726A'));