当前位置:  开发笔记 > 前端 > 正文

Rails中这个神秘的'j'是什么?

如何解决《Rails中这个神秘的'j'是什么?》经验,为你挑选了1个好方法。

我在轨道控制台,不小心输入了字母,j然后按回车键返回nil.

rails c
Loading development environment (Rails 3.2.13)
[6] pry(main)> j
=> nil
[1] pry(main)> j.nil?
=> true

谷歌没有让我到任何地方.有人知道这个神秘j是什么,它的目的是什么?只是好奇.



1> BroiSatse..:

您总是可以使用source_location以下方法找到给定方法的来源:

method(:j).source_location

甚至它与pry(或method_sourcegem)的确切定义:

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库的方法(它将此方法添加到 Kernel模块,因此可以在irb中访问),它负责将给定的参数显示为JSON对象:

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

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

它接受任意数量的参数,因此j返回nil而不打印任何内容.它相当于p方法,只使用json而不是inspect结果.

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有