JQuery从$.each到for循环
JQuery from $.each to for loop
我对JQuery很陌生,从我成功创建循环的例子来看,我知道这是一个简单的问题,但我需要你的帮助。如何转换$.每个循环:
$.getJSON('db.json', function(data)
{
$.each(data, function(key, val)
{
if(typeof val === 'object')
{
checkObj(key, val, items);
}
});
}
到for循环?我试过:
for (var i=0; i< data.length; i++)
{
if(typeof val === 'object')
{
checkObj(key, val, items);
}
}
但是怎么处理key和val呢?
(对于数组)非常接近。只需添加:
var val;
在顶部,然后
val = data[i];
在循环中。
var i, val;
for (i=0; i< data.length; i++)
{
val = data[i];
if(typeof val === 'object')
{
checkObj(i, val, items);
// ^----- `i`, not `key`, since you used `i` instead of `key` for the loop
}
}
但我的问题是:为什么要这样做?$.each
非常方便,尤其是因为它为key
/i
和val
变量提供了良好的包含范围。如果你担心在每次迭代中调用一个函数,不要担心
$.each
也有双重性质:当你给它一个数组时,它会在数组元素中循环。但当你给它一个对象时,它会循环通过对象的可枚举属性。两者都很方便。
相关文章:
- 为什么JavaScript在for循环为3时向所有4发出警报
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 我的javascript for循环不起作用
- For循环冻结Javascript
- 如何在for循环中添加事件侦听器
- 双“for”循环(循环)
- javascript for循环不起作用
- for循环中的javascript if语句找不到==
- Javascript在for循环中等待处理请求
- For循环在Jquery中只运行一次
- 如何在for循环中使用计数器
- for循环中的JavaScript闭包
- 为什么我们在ES2015中需要一个新的for循环结构,而我们已经有了for、forEach
- For循环在调用时未运行
- 如何使用for循环添加所有按钮'单击事件
- 如何更改在for循环中生成的圆的位置
- 为什么这个For循环会使浏览器实验室崩溃
- 为什么我使用javascript获得了一个无限的for循环
- 在for循环中使用多维数组设置google.maps.Marker图标
- 如何在angularJS中运行for循环而不使用html标记