gpt4 book ai didi

javascript - 为所有数组元素调用函数,而不将 item 作为参数传递

转载 作者:行者123 更新时间:2023-11-28 15:31:05 25 4
gpt4 key购买 nike

在 javascript 中我可以这样做:

var show = function(w) {
alert(w);
};

var words = ['a', 'b', 'c'];
words.forEach(show);

请注意,我不需要将数组项作为参数传递。

在 ruby​​ 中是否有同样的方法?

喜欢:

def show(w)
puts w
end

words = ['a', 'b', 'c']
words.each(show)
PS:我知道我可以通过执行以下操作来做到这一点: words.each { |w|显示(w)}。问题是我是否可以像在 javascript 中一样执行此操作,而不将项目作为参数传递。

最佳答案

当然,您可以通过传递方法来完成此操作,就像在 ECMAScript 中一样:

words.each(&method(:show))

请注意,这是使 Ruby 示例正常工作的方法。然而,Ruby 方法实际上并不是与 Ruby 中的 ECMAScript 函数最接近的类似物。 Proc 实际上会更接近:

show = -> w { puts w }

words.each(&show)

这实际上读起来非常接近 ECMAScript 6 版本:

const show = w => alert(w);

words.forEach(show);

关于javascript - 为所有数组元素调用函数,而不将 item 作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27327509/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com