嗯,我在ES6中有一個場景,我使用vuejs作爲當前模塊。檢查對象值是否等於字符串值
我需要檢查數組對象中是否存在字符串值。
let obj1 = [{name: "abc ced", id: 1},
{name: "holla' name", id: 2},
{name: "3' name", id: 3}]
let obj2 = { key: "3' name" , key1: 2 }
我需要爲obj1獲取對象,其中obj2的名稱屬性值存在於obj1中。這樣做就像
_.each(obj1, function(obj){
for (var k in obj) {
if (!obj.hasOwnProperty(k)) continue
if (obj[k] === obj2.key) {
console.log(obj)
}
}
})
我錯過了什麼嗎?因爲控制檯從不記錄任何值。
注:
我使用loadash,並試圖用找過
let result = _.find(obj1 , {name: obj2.key})
console.log(result)
它會工作,如果將嘗試使用
let result = _.find(obj1 , {id: obj2.key1})
console.log(result)
所以對於它的工作原理整數比賽很好,但對於字符串沒有控制檯。
但看起來什麼都沒有。然後我嘗試了上面給出的其他解決方案
注意:一切工作正常,只有我缺少的是我沒有檢查字符串大小寫,因爲有一些大寫和大寫的問題。所以隱蔽可比字符串小寫和大寫,所以你不,至少使這些愚蠢的錯誤
歡呼
你所檢查的'obj1.key'。應該是'obj2.key' –
可以請你清楚一件事,你想檢查obj1中的某個特定的密鑰,比如'name',還是隻想找到與obj1中存在的任何密鑰匹配? – RaghavGarg
@RaghavGarg我想檢查是否在obj1中,有任何名稱等於obj2.key的對象。所以它是obj1 –