下記コードでは問題が再現できませんが、
json.parseで配列にしたところ、
通常であれば1 2 3 4と表示されるところ、
2 1 3 4と勝手に配列の順番が変わる事象がおきました
問題が再現できればいいのですが、なぜかできません
なぜ勝手に順番が変わるのか、わかる方いらっしゃらないでしょうか?
json.parse時にソートを無効化する方法はありますか?
<script> window.onload=function(e){ json=`{ "data":{ "a56207": { "no": "1" }, "25628": { "no": "2" }, "b0620": { "no": "3" }, "f7628": { "no": "4" } } }`; try { arr=JSON.parse(json); } catch(e) { return false; } a=Object.keys(arr["data"]); for(i=0;i<a.length;i++){ alert(arr["data"][a[i]]["no"]); } } </script>
JSON オプジェクトのキーの順番は保証されません。
https://scrapbox.io/dojineko/JSON%E3%81%AE%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%AE%E3%82%AD%E3%83%BC%E9%A0%86%E5%BA%8F%E3%81%AF%E4%BF%9D%E8%A8%BC%E3%81%95%E3%82%8C%E3%81%AA%E3%81%84

回答1件
あなたの回答
tips
プレビュー