标签: each

如何循环或枚举JavaScript对象?

我有一个像以下JavaScript对象:

var p = {
    "p1": "value1",
    "p2": "value2",
    "p3": "value3"
};
Run Code Online (Sandbox Code Playgroud)

现在我想通过所有回路p元素(p1,p2,p3...),并得到他们的键和值.我怎样才能做到这一点?

如有必要,我可以修改JavaScript对象.我的最终目标是遍历一些键值对,如果可能的话,我想避免使用eval.

javascript each loops

2704
推荐指数
38
解决办法
180万
查看次数

Ruby中的"for"vs"each"

我刚才有一个关于Ruby循环的快速问题.这两种迭代集合的方式有区别吗?

# way 1
@collection.each do |item|
  # do whatever
end

# way 2
for item in @collection
  # do whatever
end
Run Code Online (Sandbox Code Playgroud)

只是想知道这些是否完全一样,或者是否有一个微妙的差异(可能是什么时候@collection是零).

ruby iteration each foreach loops

196
推荐指数
5
解决办法
23万
查看次数

在.each()完成后调用jQuery函数

在jQuery中,是否可以在调用(或任何其他类型的迭代回调)完成后调用回调触发事件..each()

例如,我想要"淡化和删除"来完成

$(parentSelect).nextAll().fadeOut(200, function() {
    $(this).remove();
});
Run Code Online (Sandbox Code Playgroud)

在做一些计算并在之后插入元素之前$(parentSelect).如果jQuery仍然可以看到现有元素并且睡眠/延迟一些任意时间(每个元素200个)似乎是一个脆弱的解决方案,那么我的计算是不正确的.

我可以很容易地.bind()为事件回调提供必要的逻辑但是我不确定如何.trigger()在上面的迭代完成之后干净地调用它.显然,我不能在迭代中调用触发器,因为它会多次触发.

在这种情况下$.each(),我考虑在数据参数的末尾添加一些东西(我将在迭代体中手动查找),但我不想被迫这样,所以我希望有一些其他的优雅关于迭代回调控制流的方法.

each jquery

180
推荐指数
6
解决办法
22万
查看次数

在每个循环中访问Handlebars.js范围之外的变量

我有一个handlebars.js模板,就像这样:

{{externalValue}}

<select name="test">
    {{#each myCollection}}
       <option value="{{id}}">{{title}} {{externalValue}}</option>
    {{/each}}
</select>
Run Code Online (Sandbox Code Playgroud)

这是生成的输出:

myExternalValue

<select name="test">
       <option value="1">First element </option>
       <option value="2">Second element </option>
       <option value="3">Third element </option>
</select>
Run Code Online (Sandbox Code Playgroud)

正如所料,我可以访问每个元素的idtitle字段myCollection来生成我的选择.在select之外,我的externalValue变量被正确打印("myExternalValue").

不幸的是,在期权的文本中,externalValue价值从未打印出来.

我的问题是:我怎样才能在循环内访问handlebars.js范围之外的变量?

一如既往,先谢谢.

javascript each templates scope handlebars.js

174
推荐指数
3
解决办法
5万
查看次数

如何在每个循环中使用jquery继续

在我的应用程序中我使用ajax调用.我想在这个jquery循环中使用break并继续.

$('.submit').filter(':checked').each(function() {

});
Run Code Online (Sandbox Code Playgroud)

each jquery for-loop

147
推荐指数
4
解决办法
9万
查看次数

迭代Perl哈希键的最安全的方法是什么?

如果我有一堆(键,值)对的Perl哈希,迭代所有键的首选方法是什么?我听说使用each可能会以某种方式产生意想不到的副作用.那么,这是真的,并且是以下两种方法中最好的方法之一,还是有更好的方法?

# Method 1
while (my ($key, $value) = each(%hash)) {
    # Something
}

# Method 2
foreach my $key (keys(%hash)) {
    # Something
}
Run Code Online (Sandbox Code Playgroud)

iteration perl hash each

102
推荐指数
5
解决办法
11万
查看次数

如何迭代Handlebars中的对象数组?

这似乎是一个愚蠢的问题,但我似乎无法在任何地方找到答案.

我正在点击这个以ASON格式返回对象数组的Web Api:

对象数组

Handlebars docs显示以下示例:

<ul class="people_list">
  {{#each people}}
  <li>{{this}}</li>
  {{/each}}
</ul>
Run Code Online (Sandbox Code Playgroud)

在以下情况下:

{
  people: [
    "Yehuda Katz",
    "Alan Johnson",
    "Charles Jolley"
  ]
}
Run Code Online (Sandbox Code Playgroud)

在我的情况下,我没有数组的名称,它只是响应的根对象.我试过{{#each}}没有运气.

第一次使用把手......我错过了什么?

UPDATE

这是一个简化的小提示,以显示我在问什么:http://jsfiddle.net/KPCh4/2/

把手是否需要将上下文变量作为对象而不是数组?

arrays each loops handlebars.js

98
推荐指数
5
解决办法
14万
查看次数

jQuery .each()索引?

我在用

$('#list option').each(function(){
//do stuff
});
Run Code Online (Sandbox Code Playgroud)

循环遍历列表中的选项.我想知道如何获得当前循环的索引?

因为我不想让var i = 0; 在循环内部有i ++;

indexing each jquery

94
推荐指数
4
解决办法
13万
查看次数

告诉ruby中的.each循环结束

如果我有一个循环,如

users.each do |u|
  #some code
end
Run Code Online (Sandbox Code Playgroud)

用户是多个用户的哈希值.什么是最简单的条件逻辑,看你是否在用户哈希中的最后一个用户,并且只想为最后一个用户执行特定的代码,所以像

users.each do |u|
  #code for everyone
  #conditional code for last user
    #code for the last user
  end
end
Run Code Online (Sandbox Code Playgroud)

谢谢

ruby each loops ruby-on-rails

80
推荐指数
7
解决办法
5万
查看次数

$ .each(selector)和$(selector).each()之间有什么区别

这有什么区别:

$.each($('#myTable input[name="deleteItem[]"]:checked').do_something());
Run Code Online (Sandbox Code Playgroud)

还有这个:

$('#myTable input[name="deleteItem[]"]:checked').each(function() { do_something });
Run Code Online (Sandbox Code Playgroud)

正在选择和执行的表格单元格的html如下所示:

<td width="20px"><input type="checkbox" class="chkDeleteItem" name="deleteItem[]" value="' . $rowItem['itemID'] . '" /></td>
Run Code Online (Sandbox Code Playgroud)

我已经浏览了jQuery文档,但我仍然不明白其中的区别.(这是我还是文件有时在内容的清晰度上略显"模糊"?)

添加信息:

显然,我的尝试是一个通用的例子让人困惑!与第一个示例中的(先前)缺少的括号一起.:(

第一个示例来自我的代码中的一行,它删除了任何行的<tbody>并选中了一个复选框:

$.each($('#classesTable input[name="deleteClasses[]"]:checked').parent().parent().parent().remove());
Run Code Online (Sandbox Code Playgroud)

第二个示例来自于我查看#classesTable以查看任何已选中复选框并在下拉列表中删除其匹配项的情况.

$('#classesTable input[name="deleteClasses[]"]:checked').each(function(){
    $('#classesList option[value="' + $(this).attr('value') + '"]').remove();
});
Run Code Online (Sandbox Code Playgroud)

我知道他们做了两件不同的事情,但是我不能说"我需要在这种情况下使用$ .each()而在另一种情况下需要使用.each(function(){}).

它们可以互换吗?仅在某些情况下?决不?

each jquery

79
推荐指数
2
解决办法
7万
查看次数