给出一个简单的基于零的数字索引数组:
var list = ['Foo', 'Bar', 'Baz'];
Run Code Online (Sandbox Code Playgroud)
很多时候,我注意到有人建议循环遍历数组中的变量,如下所示:
for(var item in list) { ... }
Run Code Online (Sandbox Code Playgroud)
......几乎可以肯定有人认为这是不好的做法,并提出了另一种方法:
var count = list.length;
for(var i = 0; i < count; i++) {
var item = list[i];
...
}
Run Code Online (Sandbox Code Playgroud)
不使用上面更简单的版本并使用第二个例子的原因是什么?
我使用控制器中的类型类解析了一些数据我得到的数据如下:
{
"data":{
"userList":[
{
"id":1,
"name":"soni"
}
]
},
"status":200,
"config":{
"method":"POST",
"transformRequest":[
null
],
"transformResponse":[
null
],
"url":"/home/main/module/userlist",
"headers":{
"rt":"ajax",
"Tenant":"Id:null",
"Access-Handler":"Authorization:null",
"Accept":"application/json, text/plain, */*"
}
},
"statusText":"OK"
}
Run Code Online (Sandbox Code Playgroud)
我试着像这样存储数据
var userData = _data;
var newData = JSON.parse(userData).data.userList;
Run Code Online (Sandbox Code Playgroud)
如何将用户列表提取到新变量?
我已经看过SO和谷歌,但已经注意到这有帮助,我不确定如何继续.我有一个数组,我从一个PHP页面返回使用echo json_encode(),如下所示:
[" "," "," "," "," ",1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
Run Code Online (Sandbox Code Playgroud)
但是Unexpected token o at Object.parse (native)当我尝试使用JSON.parse()并且Unexpected token o at Function.parse (native)当我使用JQuery交替时,我不断得到.
但是当我把它附加到$scope我可以在页面上打印出来的时候,那么我做错了什么,我怎么能纠正这个?
这是我的控制器
function myController($scope, memberFactory) {
response = memberFactory.getMonth("2013-08-01 06:30:00");
//$scope.response = response;
var monthDays = $.parseJSON(response);
var dates = [];
for (var i = 0; i < monthDays.length; i++) {
if (i % 7 == 0) dates.push([]);
dates[dates.length - 1].push(monthDays[i]);
}
$scope.dates = dates;
//
}
Run Code Online (Sandbox Code Playgroud)
这是我的服务方法:
obj.getMonth = function (date) { …Run Code Online (Sandbox Code Playgroud)