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 -检查数据类型的更多相关文章

  1. ruby -检查json数据类型

    HashObj={","language"=>"zh","make"=>"Apple"," ...

  2. 【Ruby on Rails 学习三】Ruby 基本数据类型(类、类的实例、对象)

    数字.文本.范围.符合.True.False.Nil 1为什么是一个类的对象,使用methods方法可以查看一个对象的所有函数(方法) $ irb irb(main)::> => irb( ...

  3. Ruby基础数据类型

    #数字分为证书Integer,浮点数Float(对应与其他语言中的double),和复数Complex #整数又分为Fixnum和Bignum,Fixnum和Bignum会互相转换,这些都是ruby自 ...

  4. js检查数据类型

    在实际工作中我们经常遇到要检测传入的参数类型是什么.也许第一时间想的的是typeof ,但这个也只是能检测个别的一些类型.如果要检测null,Array这些类型呢? 所以我们可以封装一个方法可以更加方 ...

  5. 深度解析javaScript常见数据类型检查校验

    前言 在JavaScript中,数据类型分为两大类,一种是基础数据类型,另一种则是复杂数据类型,又叫引用数据类型 基础数据类型:数字Number 字符串String 布尔Boolean Null Un ...

  6. ruby 基础知识(一)

    突然今天发现一大神的博客:http://www.cnblogs.com/jackluo/archive/2013/01/22/2871655.html    相信初学者会受益颇多 ruby  参考文档 ...

  7. Ruby基本语法规则

    1.Ruby常用数据类型 Numbers, Strings, Booleans my_num = 25 my_boollean = true (or false) my_string = " ...

  8. PHP编程基础学习(一)——数据类型

    PHP一共支持8种原始类型,其中: 4种标量类型: boolean(布尔型) integer(整型) float/double(浮点型) string(字符串型) 两种复合类型: array(数组) ...

  9. Ruby入门笔记

    Ruby入门笔记 一切皆为对象 “Hello”.length 方法 定义:def开头 end结尾 命名一般采用下划线分隔单词

随机推荐

  1. 二、CoreAnimation之寄宿图详解

    在之前的图层树中我们知道,可以使用CALayer对象创建一些有背景颜色的图层,其实使用CALayer,不仅可以利用其展示背景颜色,还可以展示图片.而这些展示内容,其实就是CALayer的寄宿图.这一节 ...

  2. Swift - 设置tableView每个分区cell圆角

    1.// 重新绘制cell边框 func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRow ...

  3. 使用tomact监控应用服务器的性能

    第一步:在D:\apache-tomcat-7.0.63\conf 配置目录找到tomcat-users.xml 打开添加用户角色及权限 第二步:重启tomact 第三步:浏览器上打开http://1 ...

  4. Java中String,StringBuffer与StringBuilder的差别

    String 字符串常量: StringBuffer 字符串变量〈缓冲区〉(线程安全): StringBuilder 字符串变量〈缓冲区〉(非线程安全): 简要的说, String 类型和 Strin ...

  5. UITableView在设置contentOffset的同时也reload,造成tableView的contentOffset偏差

    最近在写一个聊天的框架,遇到一个奇葩的问题,就是发送聊天记录的时候(需要tableView上移,显示出最新的记录),增加一条记录无疑需要reload一下(大家都明白的),这是就会出现头疼的问题,页面显 ...

  6. appium依赖pom文件注解

    <!-- appium部分 依赖--> <dependency> <groupId>io.appium</groupId> <artifactId ...

  7. B窗体继承于A窗体,B启动:问题点

    uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls; t ...

  8. BZOJ1453: [Wc]Dface双面棋盘

    Description Input Output Sample Input Sample Output HINT 线段树套并查集应该是比较好写的做法,时间复杂度为O(N^3+M*NlogN). #in ...

  9. dede调用img图片

    1.默认的index.htm调用: {dede:arclist row='3' titlelen='30' typeid='1'} <div class="swiper-slide&q ...

  10. Ubuntu14.10下安装JDK 8

    方法一1、下载 JDK 8http://www.oracle.com/technetwork/java/javasebusiness/downloads/此处由于我的系统是Ubuntu14.10 64 ...