javascript中多维数组中的唯一值
在js中,我创建了一个多维数组,代码如下:javascript中多维数组中的唯一值,javascript,jquery,arrays,Javascript,Jquery,Arrays,在js中,我创建了一个多维数组,代码如下: result.each(function(i, element){ init.push({ label : $(this).data('label'), value : $(this).val(), }); }); [ Object { label=" Login ", value="Create Login Novell"}, Object { label=" Log
result.each(function(i, element){
init.push({
label : $(this).data('label'),
value : $(this).val(),
});
});
[
Object { label=" Login ",
value="Create Login Novell"},
Object { label=" Login ",
value="Create Email Baru"},
]
js firebug中的此数组如下所示:
[
Object { label=" Login ",
value="Create Login Novell"},
Object { label=" Login ",
value="Create Email Baru"},
Object { label=" Login ",
value="Create Login Novell"}
]
我的问题是,我怎样才能得到唯一的元素(值),
我写了这样的代码,但没有给我我需要的
var unique = init.filter(function(item,i, a){
return i==a.indexOf(item);
});
我需要这样:
result.each(function(i, element){
init.push({
label : $(this).data('label'),
value : $(this).val(),
});
});
[
Object { label=" Login ",
value="Create Login Novell"},
Object { label=" Login ",
value="Create Email Baru"},
]
确实,您需要使用过滤器,但必须先创建一个函数来查找值的最后一个索引:
var数组=[{label:“Login”,value:“Create Login Novell”},{label:“Login”,value:“Create Email Baru”},{label:“Login”,value:“Create Login Novell”};
var posit=(选项卡,值)=>{
var pos=-1;
tab.forEach((x,索引)=>{
如果(x.value==值)pos=索引;
});
返回pos;
}
var结果=数组.过滤器((x,i,arr)=>posit(arr,x.value)==i);
控制台日志(结果)代码>如何知道只有一个唯一的项目。你需要提供更多的细节,这太宽泛了。