ruby -- 基础学习(五)empty、nil、blank三者之间的区别
2013-08-16 18:27
246 查看
这三个方法在ROR中经常用到,都是用来判断是否为空的。
区别是:
ruby的方法:.nil?、.empty?
rails的方法 :.blank?
用法的区别:
.nil? : 判断对象是否存在。
.empty? : 是对象已经存在,判断是否为空字段。
.blank? : 相当于同时满足 .nil? 和 .empty? 。
注: Rails API中的解释是如果对象是:false, empty, 空白字符都是blank。
比如说: "", " ", nil, [], 和{}都算是blank。
也就是说,object.blank? 相当于 object.nil? || object.empty?
.nil? 和 empty? 的简单例子
注 : .empty?不能用于整数
.blank?的简单例子
原文链接 : http://www.cnblogs.com/zhualike/archive/2009/11/27/1612215.html
区别是:
ruby的方法:.nil?、.empty?
rails的方法 :.blank?
用法的区别:
.nil? : 判断对象是否存在。
.empty? : 是对象已经存在,判断是否为空字段。
.blank? : 相当于同时满足 .nil? 和 .empty? 。
注: Rails API中的解释是如果对象是:false, empty, 空白字符都是blank。
比如说: "", " ", nil, [], 和{}都算是blank。
也就是说,object.blank? 相当于 object.nil? || object.empty?
.nil? 和 empty? 的简单例子
nil.nil? => true false.nil? => false 1.nil? => false 0.nil? => false "".nil? => false [].nil? => false "".empty? => true "abc".empty? => false [].empty? => true [1, 2, 3].empty? => false
注 : .empty?不能用于整数
1.empty? => NoMethodError #说明 empty? 方法不能用于整数
.blank?的简单例子
true.blank? => false false.blank? => true "true".blank? => false "".blank? => true "\n".blank? => true '\n'.blank? => false 'true'.blank? => false ''.blank? => true 1.blank? => false [].blank? => true [1].blank? => true
原文链接 : http://www.cnblogs.com/zhualike/archive/2009/11/27/1612215.html
相关文章推荐
- Rails -- empty、nil、blank三者之间的区别
- 理解RoR(Ruby on Rails)中 nil? empty? blank?方法的区别
- Html DOM、Ext Element及Component三者之间的区别(Ext入门基础)
- Ruby中的nil?,empty?与Rails中的blank?,present?
- nil? blank? empty? 的区别
- Rails :.nil? , .empty?, .blank? .present? 的区别
- [转]ExtJs基础--Html DOM、Ext Element及Component三者之间的区别
- C语言基础指针之const char *p,char const *p,,cahr * const p 三者之间的区别
- ruby中nil?, empty? and blank?的选择
- 【转】ruby中nil?, empty? and blank?的选择
- Rails中nil? empty? blank? present?的区别
- Ruby的.nil? .empty? .blank? .present?区别
- Ruby的.nil? .empty? .blank? .present?差别
- 【学习总结】iOS中NSNotification、delegate、KVO三者之间的区别与联系?
- Html DOM、Ext Element及Component三者之间的区别(Ext入门基础)
- Html DOM、Ext Element及Component三者之间的区别(Ext入门基础)
- .nil? .empty? .blank? .present? in Ruby on Rails
- JAVA基础(一) StringUtils中 isNotEmpty 和isNotBlank的区别
- .nil? .empty? .blank? .present? in Ruby on Rails
- 我理解的string s = string.Empty,string s = null和string s = ""三者之间的区别