ruby -检查数据类型
HashObj={"id"=>"fae6e87e932c29a0c177512151114f22","at"=>2,"app"=>{"id"=>"9d66d9249cc5bd549b0e68b9fedc69a7","paid"=>0,"cat"=>[10505],"storeurl"=>"https=>//itunes.apple.com/cn/app/id902345501?l=zh&mt=8","name"=>"App Name","bundle"=>"yourcompany.com.app","ver"=>"1.2"},"imp"=>[{"id"=>"5cdef32a55397c48b8baeb3cee0c5b5c","bidfloor"=>6000,"instl"=>0,"bidfloorcur"=>"RMB","banner"=>{"w"=>320,"h"=>50,"pos"=>1}}],"device"=>{"os"=>"iOS","model"=>"iPhone5,1","geo"=>{"lon"=>116.4736795,"type"=>1,"lat"=>39.9960702},"osv"=>"7.0.6","js"=>1,"dnt"=>0,"sh"=>1024,"ip"=>"10.23.45.67","s_density"=>2,"connectiontype"=>2,"dpidsha1"=>"7c222fb2927d828af22f592134e8932480637c0d","ua"=>"Mozilla/5.0 (iPhone; CPU iPhone OS 7_0_6 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B206","carrier"=>"","language"=>"zh","make"=>"Apple","sw"=>768},"user"=>{}} level = 0
def each_kv hh
hh.keys.each do |key|
val = hh[key]
if val.class == Hash
# puts "||||| val is #{val} "
each_kv val
end
if val.class == Fixnum || val.class == Float || val.class == Array puts "key #{key } ==> #{val} , #{val.class}"
end
end
end each_kv(HashObj)
ruby -检查数据类型的更多相关文章
- ruby -检查json数据类型
HashObj={","language"=>"zh","make"=>"Apple"," ...
- 【Ruby on Rails 学习三】Ruby 基本数据类型(类、类的实例、对象)
数字.文本.范围.符合.True.False.Nil 1为什么是一个类的对象,使用methods方法可以查看一个对象的所有函数(方法) $ irb irb(main)::> => irb( ...
- Ruby基础数据类型
#数字分为证书Integer,浮点数Float(对应与其他语言中的double),和复数Complex #整数又分为Fixnum和Bignum,Fixnum和Bignum会互相转换,这些都是ruby自 ...
- js检查数据类型
在实际工作中我们经常遇到要检测传入的参数类型是什么.也许第一时间想的的是typeof ,但这个也只是能检测个别的一些类型.如果要检测null,Array这些类型呢? 所以我们可以封装一个方法可以更加方 ...
- 深度解析javaScript常见数据类型检查校验
前言 在JavaScript中,数据类型分为两大类,一种是基础数据类型,另一种则是复杂数据类型,又叫引用数据类型 基础数据类型:数字Number 字符串String 布尔Boolean Null Un ...
- ruby 基础知识(一)
突然今天发现一大神的博客:http://www.cnblogs.com/jackluo/archive/2013/01/22/2871655.html 相信初学者会受益颇多 ruby 参考文档 ...
- Ruby基本语法规则
1.Ruby常用数据类型 Numbers, Strings, Booleans my_num = 25 my_boollean = true (or false) my_string = " ...
- PHP编程基础学习(一)——数据类型
PHP一共支持8种原始类型,其中: 4种标量类型: boolean(布尔型) integer(整型) float/double(浮点型) string(字符串型) 两种复合类型: array(数组) ...
- Ruby入门笔记
Ruby入门笔记 一切皆为对象 “Hello”.length 方法 定义:def开头 end结尾 命名一般采用下划线分隔单词
随机推荐
- Java笔记:对象,方法,类
1.数据类型(类) 对象名; 这里要求数据类型必须为复合数据类型,基本数据类型声明的结构只能称为变量,而不能称为对象. 对象的初始化 对象名= new 构造方法(参数); 2.方法: 访问控制符 [修 ...
- ios升级<注:来着微信平台>
<来着微信平台> http://mp.weixin.qq.com/s?__biz=MjM5NTIyNTUyMQ==&mid=2709545194&idx=1&sn ...
- Jmeter发送soap请求
1.新建线程组-添加SOAP/XML-RPC Request 2.我们以天气预报接口为例,http://ws.webxml.com.cn/WebServices/WeatherWS.asmx,选择最后 ...
- android init进程分析 ueventd
转自:http://blog.csdn.net/freshui/article/details/2132299 (懒人最近想起我还有csdn好久没打理了,这个Android init躺在我的草稿箱中快 ...
- 主动模式FTP与被动模式FTP该如何选择
主动模式FTP与被动模式FTP该如何选择 无论是主动模式还是被动模式,其要进行文件传输都必须依次建立两个连接,分别为命令连接与数据连结.而主动模式与被动模式的差异主要体现在数据连结通道上.为了说明两 ...
- 8-07CONTIUE 、 BREAK、RETURN
CONTIUE: 可以让程序跳过CONTIUE关键字之后的语句,回到WHILE循环的第一行命令. BREAK:让程序跳出循环,结束WHILE的循环. BREAK: 让系统完全跳出循环,结束WHILE循 ...
- Hadoop学习笔记(1) 初识Hadoop
1. Hadoop提供了一个可靠的共享存储和分析系统.HDFS实现存储,而MapReduce实现分析处理,这两部分是Hadoop的核心. 2. MapReduce是一个批量查询处理器,并且它能够在合理 ...
- 搭建高可用MongoDB集群(一):配置MongoDB
在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写.海量数据高效存储.高可扩展性和高可用性这些难题.不过就是因为这些问题Nosql诞生了. NOSQL有这些优势: 大数据量,可以通过 ...
- Linux第03天
Linux 第03天 1.Linux帐号和ACL权限管理 1.帐号和用户组 1.1 用户标识符————UID(root为0 系统用户为1~499 普通用户为500~65535) 1.2 用户组标识符— ...
- python 线程之threading(五)
在学习了Event和Condition两个线程同步工具之后还有一个我认为比较鸡肋的工具 semaphores 1. 使用semaphores的使用效果和Condition的notify方法的效果基本相 ...