加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails中的这个神秘的“j”是什么?

发布时间:2020-12-16 22:53:23 所属栏目:百科 来源:网络整理
导读:我在轨道控制台,不小心输入了字母j,然后按Enter键,并返回零. rails cLoading development environment (Rails 3.2.13)[6] pry(main) j= nil[1] pry(main) j.nil?= true Google没有让我在任何地方.有谁知道这个神秘的j是什么,它的目的是什么?只是好奇. 解决
我在轨道控制台,不小心输入了字母j,然后按Enter键,并返回零.
rails c
Loading development environment (Rails 3.2.13)
[6] pry(main)> j
=> nil
[1] pry(main)> j.nil?
=> true

Google没有让我在任何地方.有谁知道这个神秘的j是什么,它的目的是什么?只是好奇.

解决方法

您可以随时使用source_location找到给定方法的源:
method(:j).source_location

或者甚至与pry(或method_source gem)的确切定义:

method(:j).source

结果:

def j(*objs)
  objs.each do |obj|
    puts JSON::generate(obj,:allow_nan => true,:max_nesting => false)
  end
  nil
end

j是一个来自JSON库的方法(它将此方法添加到内核模块,以便可以在irb中访问),它负责将给定的参数显示为JSON对象:

j(hello: :world) 
  #=> {"hello":"world"}
  nil

默认情况下,Rails需要json库,因此可以立即使用.在纯IRB中,需要“json”来访问它.

它接受任何数量的参数,所以j返回没有打印任何东西.它相当于p方法,只是使用json而不是检查结果.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读