最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript for-in有序遍歷json數(shù)據(jù)并探討各個(gè)瀏覽器差異

 更新時(shí)間:2015年11月30日 11:41:28   投稿:mrr  
這篇文章主要介紹了javascript for-in有序遍歷json數(shù)據(jù)并探討各個(gè)瀏覽器差異的相關(guān)資料,需要的朋友可以參考下

object本身就是無(wú)對(duì)象的集合,因此在用 for-in 語(yǔ)句遍歷對(duì)象的屬性時(shí),遍歷出的屬性順序與對(duì)象定義時(shí)不同。

了解W3C標(biāo)準(zhǔn):

根據(jù) ECMA-262(ECMAScript)第三版中描述,for-in 語(yǔ)句的屬性遍歷的順序是由對(duì)象定義時(shí)屬性的書(shū)寫(xiě)順序決定的。

關(guān)于 ECMA-262(ECMAScript)第三版中 for-in 語(yǔ)句的更多信息,請(qǐng)參考 ECMA-262 3rd Edition 中 12.6.4 The for-in Statement。

在現(xiàn)有最新的 ECMA-262(ECMAScript)第五版規(guī)范中,對(duì) for-in 語(yǔ)句的遍歷機(jī)制又做了調(diào)整,屬性遍歷的順序是沒(méi)有被規(guī)定的。

關(guān)于 ECMA-262(ECMAScript)第五版中 for-in 語(yǔ)句的更多信息,請(qǐng)參考 ECMA-262 5rd Edition 中 12.6.4 The for-in Statement。

新版本中的屬性遍歷順序說(shuō)明與早期版本不同,這將導(dǎo)致遵循 ECMA-262 第三版規(guī)范內(nèi)容實(shí)現(xiàn)的 JavaScript 解析引擎在處理 for-in 語(yǔ)句時(shí),與遵循第五版規(guī)范實(shí)現(xiàn)的解析引擎,對(duì)屬性的遍歷順序存在不一致的問(wèn)題。

 因此在開(kāi)發(fā)中應(yīng)盡量避免編寫(xiě)依賴對(duì)象屬性順序的代碼。如下:

<script>
var json1 = {
    "2":{"name":"第1條"},
    "1":{"name":"第2條"},
    "3":{"name":"第3條"}
}
var json2 = [
    {"name":"第1條"},
    {"name":"第2條"},
    {"name":"第3條"}
]
for(var i in json1){
    alert(json1[i].name);
}
//正確
for(var i in json2){
    alert(json2[i].name);
}
</script>

看看for-in代碼在個(gè)瀏覽器差異:

下面通過(guò)一段代碼單獨(dú)給大家介紹JS 循環(huán)遍歷JSON數(shù)據(jù)

JSON數(shù)據(jù)如:

{"options":"[{/"text/":/"王家灣/",/"value/":/"9/"},{/"text/":/"李家灣/",/"valu
e/":/"10/"},{/"text/":/"邵家灣/",/"value/":/"13/"}]"}

用js可以寫(xiě)成:

var data=[{name:"a",age:12},{name:"b",age:11},{name:"c",age:13},{name:"d",age:14}]; 
   for(var o in data){ 
    alert(o); 
    alert(data[o]); 
    alert("text:"+data[o].name+" value:"+data[o].age ); 
   } 

或是

<script type="text/javascript"> 
function text(){ 
 var json = {"options":"[{/"text/":/"王家灣/",/"value/":/"9/"},{/"text/":/"李家灣/",/"value/":/"10/"},{/"text/":/"邵家灣/",/"value/":/"13/"}]"}  
 json = eval(json.options) 
 for(var i=0; i<json.length; i++) 
 { 
   alert(json[i].text+" " + json[i].value) 
 } 
} 
</script> 

相關(guān)文章

  • javascript 關(guān)于賦值、淺拷貝、深拷貝的個(gè)人理解

    javascript 關(guān)于賦值、淺拷貝、深拷貝的個(gè)人理解

    關(guān)于賦值、淺拷貝、深拷貝,以前也思考良久,很多時(shí)候都以為記住了,但是,我太難了。今天我特地寫(xiě)下筆記,希望可以完全掌握這個(gè)東西,也希望可以幫助到任何想對(duì)學(xué)習(xí)這個(gè)東西的同學(xué)
    2019-11-11
  • javascript字符串拆分成單個(gè)字符相加和不超過(guò)10,求最終值

    javascript字符串拆分成單個(gè)字符相加和不超過(guò)10,求最終值

    javascript字符串拆分成單個(gè)字符相加和不超過(guò)10,求最終值
    2008-09-09
  • 新版小程序登錄授權(quán)的方法

    新版小程序登錄授權(quán)的方法

    這篇文章主要介紹了新版小程序登錄授權(quán)的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • 解析Javascript中難以理解的11個(gè)問(wèn)題

    解析Javascript中難以理解的11個(gè)問(wèn)題

    這篇文章主要是對(duì)Javascript中難以理解的11個(gè)問(wèn)題進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助
    2013-12-12
  • 最好用的Bootstrap fileinput.js文件上傳組件

    最好用的Bootstrap fileinput.js文件上傳組件

    這篇文章主要為大家詳細(xì)介紹了最好用的Bootstrap fileinput.js文件上傳組件的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • 淺析javascript中的DOM

    淺析javascript中的DOM

    本文主要給大家簡(jiǎn)單介紹了是什么是DOM、動(dòng)態(tài)操作DOM元素的方法、使用jsjs操作樣式以及Form對(duì)象的簡(jiǎn)介,是個(gè)人對(duì)于javascript中的DOM的理解的總結(jié),推薦給小伙伴們。
    2015-03-03
  • js實(shí)現(xiàn)登陸遮罩效果的方法

    js實(shí)現(xiàn)登陸遮罩效果的方法

    這篇文章主要介紹了js實(shí)現(xiàn)登陸遮罩效果的方法,涉及javascript操作頁(yè)面元素樣式的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • js遍歷map javaScript遍歷map的簡(jiǎn)單實(shí)現(xiàn)

    js遍歷map javaScript遍歷map的簡(jiǎn)單實(shí)現(xiàn)

    下面小編就為大家?guī)?lái)一篇js遍歷map javaScript遍歷map的簡(jiǎn)單實(shí)現(xiàn)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-08-08
  • js實(shí)現(xiàn)WebSocket 連接的示例代碼

    js實(shí)現(xiàn)WebSocket 連接的示例代碼

    本文主要介紹了js實(shí)現(xiàn)WebSocket 連接的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • JS判斷指定dom元素是否在屏幕內(nèi)的方法實(shí)例

    JS判斷指定dom元素是否在屏幕內(nèi)的方法實(shí)例

    做圖片滾動(dòng)加載的時(shí)候會(huì)判斷圖片是否在可視區(qū)域內(nèi),如果在就加載原地址圖片,下面這篇文章就給大家介紹了利用JS判斷指定dom元素是否在屏幕內(nèi)的方法實(shí)例,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-01-01

最新評(píng)論

古田县| 潮州市| 桂林市| 静宁县| 延川县| 乌拉特前旗| 昌平区| 久治县| 定陶县| 铅山县| 福州市| 沙田区| 邵阳县| 宜兴市| 巴塘县| 望奎县| 石渠县| 阜城县| 义马市| 平凉市| 庆元县| 娱乐| 遂川县| 清徐县| 鹰潭市| 桑日县| 涡阳县| 百色市| 东乌| 开封县| 绵阳市| 墨玉县| 阳泉市| 奉贤区| 老河口市| 七台河市| 沙洋县| 武穴市| 韶山市| 双峰县| 内乡县|