js數(shù)組對象里面如何獲取某個屬性值相等的對象
更新時間:2023年04月18日 15:23:55 作者:阡路陌人
這篇文章主要介紹了js數(shù)組對象里面如何獲取某個屬性值相等的對象問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
js數(shù)組對象里面獲取某個屬性值相等的對象
例:
var outArr=[
{"name":"張三","id":1,age:18},
{"name":"李四","id":2,age:19},
{"name":"王五","id":3,age:18},
{"name":"小紅","id":4,age:20},
{"name":"小明","id":5,age:17},
{"name":"小白","id":6,age:18}
];
var newArr = outArr.filter(function (obj) {
return obj.age== 18;
});
console.log(newArr); // [{"name":"張三","id":1,age:18},{"name":"王五","id":3,age:18},{"name":"小白","id":6,age:18}]
js獲取兩個數(shù)組及數(shù)組對象中相同和不相同的值
1、獲取兩個數(shù)組中相同的元素
var arr1 = [0,1,2,3,4,5];
var arr2 = [0,4,6,1,3,9];
function getArrEqual(arr1, arr2) {
? ? ? ? let newArr = [];
? ? ? ? for (let i = 0; i < arr2.length; i++) {
? ? ? ? ? ? for (let j = 0; j < arr1.length; j++) {
? ? ? ? ? ? ? ? if(arr1[j] === arr2[i]){
? ? ? ? ? ? ? ? ? ? newArr.push(arr1[j]);
? ? ? ? ? ? ? ? }
? ? ? ? }
? ? ?}
? ? ?return newArr;
}
console.log(getArrEqual(arr1, arr2));
//[0, 4, 1, 3]2、獲取兩個數(shù)組中不相同的元素
var arr1 = [0,1,2,3,4,5];
var arr2 = [0,4,6,1,3,9];
function getArrDifference(arr1, arr2) {
? ? return arr1.concat(arr2).filter(function(v, i, arr) {
? ? ? ? ?return arr.indexOf(v) === arr.lastIndexOf(v);
? ? });
}
console.log(getArrDifference(arr1,arr2));
?
?// [2, 5, 6, 9]3、獲取兩個數(shù)組對象中相同的值
function getArrDifSameValue(arr1,arr2){
? ? var result = [];
? ? for(var i = 0; i < arr2.length; i++){
? ? ? ? var obj = arr2[i];
? ? ? ? var id = obj.id;
? ? ? ? var isExist = false;
? ? ? ? for(var j = 0; j < arr1.length; j++){
? ? ? ? ? ? var aj = arr1[j];
? ? ? ? ? ? var n = aj.id;
? ? ? ? ? ? if(n == id){
? ? ? ? ? ? ? ? isExist = true;
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? if(isExist){
? ? ? ? ? ? result.push(obj);
? ? ? ? }
? ? }
? ? return result;
}
?
var arr1 = [ {"id": "A"},{"id": "B"}];
var arr2 = [ {"id": "A"}, {"id": "B"},{"id": "C"}];
console.log(getArrDifSameValue(arr1,arr2));4、獲取兩個數(shù)組對象中不相同的值
function getArrDifSameValue(arr1,arr2){
? ? var result = [];
? ? for(var i = 0; i < arr2.length; i++){
? ? ? ? var obj = arr2[i];
? ? ? ? var id = obj.id;
? ? ? ? var isExist = false;
? ? ? ? for(var j = 0; j < arr1.length; j++){
? ? ? ? ? ? var aj = arr1[j];
? ? ? ? ? ? var n = aj.id;
? ? ? ? ? ? if(n == id){
? ? ? ? ? ? ? ? isExist = true;
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? if(!isExist){
? ? ? ? ? ? result.push(obj);
? ? ? ? }
? ? }
? ? return result;
}
?
var arr1 = [ {"id": "A"},{"id": "B"}];
var arr2 = [ {"id": "A"}, {"id": "B"},{"id": "C"}];
console.log(getArrDifSameValue(arr1,arr2));
// [{"id": "C"}]總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
在JavaScript中模擬類(class)及類的繼承關(guān)系
眾所周知,JavaScript中沒有類,然而我們卻可以動手實現(xiàn)一個擁有繼承特性的類,所以接下來我們要討論的便是在JavaScript中模擬類(class)及類的繼承關(guān)系:2016-05-05
詳解JavaScript面向?qū)ο髮崙?zhàn)之封裝拖拽對象
本文主要介紹了JavaScript如何用面向?qū)ο蟮姆绞椒庋b拖拽對象,通過3種方式來實現(xiàn),幫助讀者更好的理解其原理2021-06-06
open 動態(tài)修改img的onclick事件示例代碼
動態(tài)修改img的onclick事件,使用open也可輕松做到,下面有個不錯的示例,需要的朋友可以參考下2013-11-11
inner join 內(nèi)聯(lián)與left join 左聯(lián)的實例代碼
這篇文章主要介紹了inner join 內(nèi)聯(lián)與left join 左聯(lián)的實例代碼,需要的朋友可以參考下2017-09-09

