鍍金池/ 問(wèn)答/HTML/ 怎么理解Array.find

怎么理解Array.find

怎么理解這段代碼的輸出?

var inventory = [
    {name: 'apples', quantity: 2},
    {name: 'bananas', quantity: 0},
    {name: 'cherries', quantity: 5}
];

function findCherries(fruit) { 
    return fruit.name === 'cherries';
}
console.log(inventory);    //cherries的quantity為10;
var item = inventory.find(findCherries);
console.log(item);
item.quantity = 10;
console.log(inventory);    //cherries的quantity為10;

chrome運(yùn)行結(jié)果
chrome運(yùn)行結(jié)果

回答
編輯回答
法克魷

find這個(gè)方法返回的值 指針還是指向原數(shù)組。內(nèi)存的堆??梢粤私庀?br>如果改成filter就不會(huì)了,因?yàn)樗麜?huì)添加一個(gè)新的內(nèi)存棧

2017年5月1日 02:53
編輯回答
傻叼

和理解沒(méi)關(guān)系。是你瀏覽器的展開(kāi)時(shí)候才去取值。所以會(huì)出現(xiàn)相同的。用下JSON.stringify就知道了

2017年5月28日 01:34