第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

是否有辦法重寫JS數(shù)組中l(wèi)ength的descriptor?

是否有辦法重寫JS數(shù)組中l(wèi)ength的descriptor?

Cats萌萌 2019-01-30 17:54:05
是否有辦法重寫js數(shù)組中l(wèi)ength的descriptor在js中,數(shù)組length已經(jīng)有默認的descriptor,并且configurable為false,所以沒有辦法覆蓋,由于我想查看在循環(huán)過程中(用length屬性去做一個限制結(jié)束)是否會將length緩存起來,所以想覆蓋length的gettet測試相關(guān)代碼// 請把代碼文本粘貼到下方(請勿用圖片代替代碼)for (let i = 10; i < arr.length; i++) {    //想知道arr.length是否每一次都會調(diào)用length}不知道瀏覽器內(nèi)部是否會對length緩存起來,循環(huán)的時候是否只call一次length然后后面的循環(huán)都用一個緩存值
查看完整描述

1 回答

?
富國滬深

TA貢獻1790條經(jīng)驗 獲得超9個贊

當然不會緩存。

var array = [0, 1, 2, 3];for (let i = 0; i < array.length; i++) {  if (array.length < 10) {    array.push(4);
  }
  console.log(i)
}

這段代碼可以證明。

數(shù)組也是對象,因此,這段代碼也可以證明

var obj = {}Object.defineProperty(obj, 'length', {  get: function () {    console.log('x');    return 4;
  }
})for (var i = 0; i < obj.length; i++) {
  
}

obj.length屬性不會緩存,每次都會讀取


查看完整回答
反對 回復 2019-01-30
  • 1 回答
  • 0 關(guān)注
  • 464 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號