【问题标题】:Understanding of Methods in Ruby Compared to Javascript与 Javascript 相比,Ruby 中的方法理解
【发布时间】:2017-11-08 17:30:40
【问题描述】:

我最近开始学习 Ruby 作为第二种编程语言,几个月前开始学习 JavaScript。

我在教程中注意到人们在 Ruby 中称为方法的东西,通常不像在 Javascript 中那样在方法后面加上括号()。

JavaScript 中的所有方法都有括号() 并且没有括号的点右侧的任何内容都是属性是否正确,但在 Ruby 中,即使没有括号,方法仍然可以是方法?

我希望这个问题不会让我看起来像个彻头彻尾的白痴,但可以这么说,我不想在早期阶段绊倒自己。

【问题讨论】:

标签: javascript ruby methods


【解决方案1】:

我是ruby,方法定义如下。

def hello_world
  puts "hello world!"
end

如你所知,在javascript中是这样定义的:

function helloWorld(){
  console.log("hello world!")
}

在 javascript 中,将函数作为回调等传递的能力相对容易。

在上面的函数中,helloWorldhelloWorld() 是两个非常不同的东西。第一个是对函数的引用,而第二个是实际调用。

这又回到了 ruby​​,ruby 不像 javascript 那样有函数的概念,它有方法。它们在 procs 和 lambdas 的方式中具有与引用函数类似的概念,但实现方式不同。

话虽如此,ruby 方法的调用不带括号,就像在 JS 中一样

在 ruby​​ 中,括号是可选的

【讨论】:

  • ruby 中的括号并不总是可选。如果当前作用域中存在同名的局部变量,括号是必须的。
猜你喜欢
  • 2018-04-16
  • 2015-06-06
  • 2017-08-31
  • 2011-05-16
  • 2015-10-06
  • 2021-10-24
  • 2012-06-26
  • 2016-04-15
  • 1970-01-01
相关资源
最近更新 更多