我有以下代碼:jQuery的每個功能不我希望的方式工作,以
$.each(data, function (key, val) {
var items = val.items;
console.log(val.id);
if (val.id === this.id) {
console.log('hello');
}
});
在上面的代碼中,我通過data
循環這是一個JSON對象。然後我比較val
的id
與this.id
,其值爲4
。因此,我想要的是當val.id (4)
等於this.id (4)
然後日誌hello
,但是,因爲data
有幾個對象,所以它記錄幾個hellos。
爲什麼以及如何才能讓它只有在符合條件並退出該循環時才表示hello?
裏面'each'循環,'this' ==='val'。你最初的''this'在'.each'裏放棄了它的價值。因此,在循環之前,將'this.id'保存在一個變量中,並將該變量與循環中的'val.id'進行比較。 – Jashwant 2013-02-11 06:22:07