Javascript json未按正确顺序打印
我有一个名为places.json的json文件。内容是Javascript json未按正确顺序打印,javascript,html,angularjs,json,Javascript,Html,Angularjs,Json,我有一个名为places.json的json文件。内容是 { "Europe": [ { "name": "London", "country": "England" }, { "name": "Paris", "country": "France" } ], "Asia": [ {
{
"Europe": [
{
"name": "London",
"country": "England"
},
{
"name": "Paris",
"country": "France"
}
],
"Asia": [
{
"name": "Delhi",
"country": "India"
},
{
"name": "Tokyo",
"country": "Japan"
}
],
"Africa": [
{
"name": "CapeTown",
"country": "SouthAfrica"
},
{
"name": "Abuja",
"country": "Nigeria"
}
]
}
这只是文件的一部分,文件很大
现在我通过angular js获取这个文件
myApp.controller('cityController', ['$scope', '$http', function ($scope, $http) {
$http.get('places.json').success(function (data) {
$scope.items = data;
}).error(function (data) {
console.log(data);
});
}]);
然后我将html页面中的数据打印为
<div ng-repeat="(key,val) in items">
<p> {{key}}</p>
<div ng-repeat="place in val">
<p>{{place.name}}</p>
<p>{{place.country}}</p>
</div>
</div>
{{key}}
{{place.name}
{{place.country}
我得到了输出,但顺序不正确。(也就是说)我将首先印刷亚洲及其地区和欧洲等。为什么会发生这种情况。如何以正确的顺序打印。对象中键的顺序未定义。大多数浏览器实现它们是按字母顺序排列的,但它们可能会按它们想要的顺序返回。 如果需要对它们进行排序,则必须将它们放入数组中,并将每个属性的名称放入新属性中(例如“名称”) 对象的定义来自: 4.3.3对象对象是对象类型的成员它是一个无序的属性集合,每个属性都包含一个基元 值、对象或函数。存储在函数的属性中的函数 对象称为方法
谢谢你。我将更改json格式,并将大陆名称也存储在propertynp中,您能将答案标记为正确吗?