Kam*_*mal 11 javascript arrays jquery
我有一个JavaScript数组:
var j_array = new Array();
j_arry=["class:1","division:a","class:5","class:3","division:b","division:c","division:d","class:10"];
Run Code Online (Sandbox Code Playgroud)
我需要找到该类的次数和它的数组键,所以我使用:
found = $.inArray('class', j_array); ` But it returns `-1`;
Run Code Online (Sandbox Code Playgroud)
然后我用:
var search = 'class';
$.each([j_array], function(index, value){
$.each(value, function(key, cell){
if (search.indexOf(cell) !== -1)
console.log('found in array '+index, cell);
});
});
Run Code Online (Sandbox Code Playgroud)
但这也是错误的.我该如何解决这个问题?
从这个数组我想得到以下内容:
等级为4次,等级为0,2,3和7
我想只创建一个单独的类数组,即
new_array = ["class:1", "class:2", "class:3", "class:10"];
Run Code Online (Sandbox Code Playgroud)目前有四个班级j_array.我怎么能得到Nth class value
也就是说,1st class value ="class:1",2nd class value="class:5",等.
kev*_*net 13
您可以过滤在新数组中匹配的元素,并返回此新数组的长度
var j_arry = ["class:1","division:a","class:5","class:3","division:b","division:c","division:d","class:10"];
var res = j_arry.filter(x => x.includes("class"));
var key = res.map(x => x.split(":")[1]);
console.log("Class coming " + res.length + " , at key " + key.join(","));
console.log("new array = ", res);Run Code Online (Sandbox Code Playgroud)
使用Array.prototype.filter过滤掉包含字符串数组的元素类 -看到下面的演示:
var j_array =["class:1","division:a","class:5","class:3","division:b","division:c","division:d","class:10"];
var result = j_array.filter(function(e){
return e.indexOf('class')!==-1;
});
console.log(result);Run Code Online (Sandbox Code Playgroud)
编辑:
要获取索引列表,您可以尝试:
var j_array =["class:1","division:a","class:5","class:3","division:b","division:c","division:d","class:10"];
var filteredIndices = []
var filtered = j_array.filter(function(e,i){
if(e.indexOf('class')!==-1) {
filteredIndices.push(i);
return true;
} else {
return false;
}
});
console.log(filtered);
console.log(filteredIndices);
// Nth class value
console.log(filtered[2]); // this prints the 3rd oneRun Code Online (Sandbox Code Playgroud)
.as-console-wrapper{top:0;max-height:100%!important;}Run Code Online (Sandbox Code Playgroud)