Javascript 由于未捕获错误,无法读取表中的元素

Javascript 由于未捕获错误,无法读取表中的元素,javascript,Javascript,我对我所从事的一个项目感到非常失望,在这个项目中,如果表中有重复的元素,我就想隐藏它们。我发现复制品没有问题。当我试图隐藏重复项时,问题就开始了。我使用的是香草JavaScript,没有任何框架或库。我发现这个错误真的很难破译 未捕获类型错误:无法读取未定义的属性“e” e是表中的第一个重复元素 我的HTML中没有任何硬编码的数据——都是JavaScript。我从来没有做过这样的展示,所以我想我会寻求一些帮助。我的代码如下 提前感谢你的帮助 var数据=[ [e',0,1,2,3,4], [a

我对我所从事的一个项目感到非常失望,在这个项目中,如果表中有重复的元素,我就想隐藏它们。我发现复制品没有问题。当我试图隐藏重复项时,问题就开始了。我使用的是香草JavaScript,没有任何框架或库。我发现这个错误真的很难破译

未捕获类型错误:无法读取未定义的属性“e”

e
是表中的第一个重复元素

我的HTML中没有任何硬编码的数据——都是JavaScript。我从来没有做过这样的展示,所以我想我会寻求一些帮助。我的代码如下

提前感谢你的帮助

var数据=[
[e',0,1,2,3,4],
[a',54312235,5,15,4],
[a',6,7,8,9,232],
[a',54112353455,5,6],
[b',0,1,2,3,4],
[b',54312235,5,15,4],
[c',62,15754,93323],
[d',27,11235,425,18,78],
[d',0,1,2,3,4],
[d',54312235,5,15,4],
[e',6,7,8,9,232],
[e',54112353455,5,6],
[e',0,1,2,3,4],
[e',54312235,5,15,4],
[e',62,15754,93323],
[e',27,11235,425,18,78]
];
//创建一个HTML表元素。
var table=document.createElement(“表”);
var elems=document.getElementsByClassName(“tableRow”);
//获取列的计数。
var columnCount=数据[0]。长度;
//添加数据行。
对于(变量i=0;idvTable.appendChild(table)您可以将重复数据消除和实际创建的元素从数据中分离出来。使用可以删除所有重复项,因此在插入时不必担心这一点

var数据=[
[e',0,1,2,3,4],
[a',54312235,5,15,4],
[a',6,7,8,9,232],
[a',54112353455,5,6],
[b',0,1,2,3,4],
[b',54312235,5,15,4],
[c',62,15754,93323],
[d',27,11235,425,18,78],
[d',0,1,2,3,4],
[d',54312235,5,15,4],
[e',6,7,8,9,232],
[e',54112353455,5,6],
[e',0,1,2,3,4],
[e',54312235,5,15,4],
[e',62,15754,93323],
[e',27,11235,425,18,78]
];
var alreadyFound=[];
数据=数据过滤器(功能(项目、pos、arr){
变量键=项目[0];
//如果已经找到此字符,请跳过。
if(alreadyFound.indexOf(key)>-1)返回false;
//否则,将此字符添加到alreadyFound并包含该项。
已找到。按下(键);
返回true;
});
//创建一个HTML表元素。
var table=document.createElement(“表”);
var elems=document.getElementsByClassName(“tableRow”);
//获取列的计数。
var columnCount=数据[0]。长度;
//添加数据行。
对于(变量i=0;i

您可以将重复数据消除和实际创建的元素从数据中分离出来。使用可以删除所有重复项,因此在插入时不必担心这一点

var数据=[
[e',0,1,2,3,4],
[a',54312235,5,15,4],
[a',6,7,8,9,232],
[a',54112353455,5,6],
[b',0,1,2,3,4],
[b',54312235,5,15,4],
[c',62,15754,93323],
[d',27,11235,425,18,78],
[d',0,1,2,3,4],
[d',54312235,5,15,4],
[e',6,7,8,9,232],
[e',54112353455,5,6],
[e',0,1,2,3,4],
[e',54312235,5,15,4],
[e',62,15754,93323],
[e',27,11235,425,18,78]
];
var alreadyFound=[];
数据=数据过滤器(功能(项目、pos、arr){
变量键=项目[0];
//如果已经找到此字符,请跳过。
if(alreadyFound.indexOf(key)>-1)返回false;
//否则,将此字符添加到alreadyFound并包含该项。
已找到。按下(键);
返回true;
});
//创建一个HTML表元素。
var table=document.createElement(“表”);
var elems=document.getElementsByClassName(“tableRow”);
//获取列的计数。
var columnCount=数据[0]。长度;
//添加数据行。
对于(变量i=0;i

我同意红水银。首先需要删除阵列中的重复项。 Red Mercury的答案是完全正确的,但这里有一个脏兮兮的快速多维阵列重复数据消除功能,我正在使用它来实现这类功能

var data = [
    ['e', 0, 1, 2, 3, 4],
    ['a', 54312, 235, 5, 15, 4],
    ['a', 6, 7, 8, 9, 232],
    ['a', 54, 11235, 345, 5, 6],
    ['b', 0, 1, 2, 3, 4],
    ['b', 54312, 235, 5, 15, 4],
    ['c', 62, 15, 754, 93, 323],
    ['d', 27, 11235, 425, 18, 78],
    ['d', 0, 1, 2, 3, 4],
    ['d', 54312, 235, 5, 15, 4],
    ['e', 6, 7, 8, 9, 232],
    ['e', 54, 11235, 345, 5, 6],
    ['e', 0, 1, 2, 3, 4],
    ['e', 54312, 235, 5, 15, 4],
    ['e', 62, 15, 754, 93, 323],
    ['e', 27, 11235, 425, 18, 78]
];

function multiDimlUniq(arr) {
    var uniques = [];
    var founds = {};
    for (var i = 0, l = arr.length; i < l; i++) {
        var s = JSON.stringify(arr[i]);
        if (founds[s]) {
            continue;
        }
        uniques.push(arr[i]);
        founds[s] = true;
    }
    return uniques;
}

var reduced = multiDimlUniq(data)
var数据=[
[e',0,1,2,3,4],
[a',54312235,5,15,4],
[a',6,7,8,9,232],
[a',54112353455,5,6],
[b',0,1,2,3,4],
[b',54312235,5,15,4],
[c',62,15754,93323],
[d',27,11235,425,18,78],
[d',0,1,2,3,4],
[d',54312235,5,15,4],
[e',6,7,8,9,232],
[e',54112353455,5,6],
[e',0,1,2,3,4],
[e',54312235,5,15,4],
[e',62,15754,93323],
[e',27,11235,425,18,78]
];
函数多维LUNIQ(arr){
var uniques=[];
var founds={};
对于(var i=0,l=