<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // JavaScript语法之数据类型的检测
        // JavaScript中提供了一种方法,可以检测变量中存储的数据,是什么数据类型
        // typeof() 
        // 布尔值类型都是 boolean
        // console.log( typeof( true ) );
        // console.log( typeof( false ) );
        // 数值类型都是 number
        // console.log( typeof( 100 ) );
        // console.log( typeof( 100.123 ) );
        // console.log( typeof( 2e3 ) );
        // console.log( typeof( NaN ) );
        // 字符串类型都是 string
        // console.log( typeof( '北京' ) );
        // console.log( typeof( "上海" ) );
        // console.log( typeof( `重庆` ) );
        // undefined 是 undefined
        // console.log( typeof( undefined ) );
        // 函数的结果是 function
        // console.log( typeof( function fun(){console.log(123)} ) );
        // null 数组array 对象object 是 object
        // null array 在 JavaScript 中 严格来说,是 object 对象中一种特殊的类型形式
        // console.log( typeof( null ) );
        // console.log( typeof( [1,2,3,4,5] ) );
        // console.log( typeof( {name:'张三'} ) );
        
        // typeof的第二种语法
        // 不推荐使用 typeof 空格 数据/对象
        // 如果程序内容过多,就容易造成代码冲突
        // 还是用小括号包起来,比较安全
        // console.log( typeof 100 );
        // typeof() 的执行 结果,永远是字符串类型
        // 有的时候,有些面试题会问
        // 内层   typeof(null)  检测 null 的数据数据类型,结果是 object
        // 外层   typeof() 实际上 是 检查 内层 typeof() 执行结果的 数据类型
        // 内层   typeof(null) 的执行结果是 object ,数据类型是 字符串类型
        // 因此   外层 typeof() 实际上是 检测 typeof('object')
        // 执行结果是  string
        // console.log(  typeof( typeof( null ) )  ) ;
        //                       结果是 'object'
        //            typeof(      'object'     )
        // 外层的执行结果是  string   
        // 总结:
        // typeof( typeof() )
        // 内层的 typeof() 结果不管是什么内容,数据类型永远是 字符串
        // 外层的 typeof() 结果永远是 string 
        // 黑色是字符串
        // 蓝色不同,是 数值 或者 布尔值 
        // 灰色 undefined 和 null
        // 字符串是黑色
        console.log('字符串');
        // 数值是蓝色
        console.log(100);
        console.log(100.123);
        console.log(NaN);
        // 布尔类型
        console.log(true);
        console.log(false);
        // undefined 和 null
        console.log(undefined);
        console.log(null);
        // 同时输出多种数据类型
        // 字符串是红色
        console.log(true,100,'北京',undefined,null);
    </script>
</body>
</html>

js数据类型的检查的更多相关文章

  1. js数据类型简单介绍

    JS数据类型 ECMAScript中有5种简单的数据类型:Undefined,Null,Boolean,Number,String.还有一种复杂的数据类型--Object(本质上是由一组无序的名值对组 ...

  2. vue—你必须知道的 js数据类型 前端学习 CSS 居中 事件委托和this 让js调试更简单—console AMD && CMD 模式识别课程笔记(一) web攻击 web安全之XSS JSONP && CORS css 定位 react小结

    vue—你必须知道的   目录 更多总结 猛戳这里 属性与方法 语法 计算属性 特殊属性 vue 样式绑定 vue事件处理器 表单控件绑定 父子组件通信 过渡效果 vue经验总结 javascript ...

  3. 由js apply与call方法想到的js数据类型(原始类型和引用类型)

    原文地址:由js apply与call方法想到的js数据类型(原始类型和引用类型) js的call方法与apply方法的区别在于第二个参数的不同,他们都有2个参数,第一个为对象(即需要用对象a继承b, ...

  4. 总结的JS数据类型判定(非常全面)

    用typeof 来检测数据类型 Javascript自带两套类型:基本数据类型(undefined,string,null,boolean,function,object)和对象类型. 但是如果尝试用 ...

  5. JavaScript学习10 JS数据类型、强制类型转换和对象属性

    JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...

  6. JS数据类型的理解(猜测)

    Js 数据类型 对于这个主题,首先来看几个问题,如果你对这几个问题很清楚的话,那就请直接跳过吧,不用接着往下看了,如果不清楚,建议你还是看看. 1)如果判断函数?function 和object的联系 ...

  7. web开发与设计--js数据类型,js运营商

    1. js数据类型划分:号码值类型,布尔,串 由typeof能够看到什么类型的数据被详述. 举例: <span style="font-family:Microsoft YaHei;f ...

  8. [妙味JS基础]第四课:JS数据类型、类型转换

    知识点总结 JS数据类型:number数字(NaN).string字符串.boolean布尔值.函数类型.object对象(obj.[].{}.null).undefined未定义 typeof 用来 ...

  9. JavaScript大厦之地基:js数据类型

    一.数据和类型        俗话说物以类聚,人以群分:这里将人和物都按类别进行了区分.我们数据也一样,使用计算机我们能处理数值,也可以处理文本还可以处理图形.音频.视频等各种各样的数据,不同的数据有 ...

  10. JS 数据类型、赋值、深拷贝和浅拷贝

    js 数据类型 六种 基本数据类型: Boolean. 布尔值,true 和 false. null. 一个表明 null 值的特殊关键字. JavaScript 是大小写敏感的,因此 null 与 ...

随机推荐

  1. Unity性能优化——托管堆/GC

    了解托管堆 许多 Unity 开发者面临的另一个常见问题是托管堆的意外扩展.在 Unity 中,托管堆的扩展比收缩容易得多.此外,Unity 的垃圾收集策略往往会使内存碎片化,因此可能阻止大型堆的收缩 ...

  2. ERP财务管理有哪些功能?如何选择合适的ERP软件开发商定制开发适合自己的ERP财务管理?

    企业日常运营中,分工明确.结构清晰的财务管理非常重要,因此在完整的ERP解决方案中,财务管理是不可或缺的部分,甚至财务管理是整个ERP解决方案的核心,其它功能模块都围绕着财务管理构建价值链创造流程,最 ...

  3. TiDB、OceanBase、PolarDB-X、CockroachDB二级索引写入性能测评

    简介: 二级索引是关系型数据库相较于NoSQL数据库的一个关键差异.二级索引必须是强一致的,因此索引的写入需要与主键的写入放在一个事务当中,事务的性能是二级索引性能的基础.本次测试将重点关注不同分布式 ...

  4. 龙蜥开源内核追踪利器 Surftrace:协议包解析效率提升 10 倍! | 龙蜥技术

    ​简介:如何将网络报文与内核协议栈清晰关联起来精准追踪到关注的报文行进路径呢? ​ 文/系统运维 SIG Surftrace 是由系统运维 SIG 推出的一个 ftrace 封装器和开发编译平台,让用 ...

  5. 基于Confluent+Flink的实时数据分析最佳实践

    简介:在实际业务使用中,需要经常实时做一些数据分析,包括实时PV和UV展示,实时销售数据,实时店铺UV以及实时推荐系统等,基于此类需求,Confluent+实时计算Flink版是一个高效的方案. 业务 ...

  6. Fluid给数据弹性一双隐形的翅膀 (1) -- 自定义弹性伸缩

    简介: 弹性伸缩作为Kubernetes的核心能力之一,但它一直是围绕这无状态的应用负载展开.而Fluid提供了分布式缓存的弹性伸缩能力,可以灵活扩充和收缩数据缓存. 它基于Runtime提供了缓存空 ...

  7. 【ESSD技术解读-01】 云原生时代,阿里云块存储 ESSD 快照服务如何被企业级数据保护所集成?

    ​简介: 本文描述了阿里云块存储快照服务基于高性能 ESSD 云盘提升快照服务性能,提供轻量.实时的用户体验及揭秘背后的技术原理.依据行业发展及云上数据保护场景,为企业用户及备份厂商提供基于快照高级特 ...

  8. 技术干货 | 闲鱼:一个优秀的 Push 平台,需要经历怎样的前世今生

    ​简介: mPaaS 消息推送服务,快速集成多家厂商 Push 通道,有效提高用户留存率,提升用户体验. 编者荐语: 点击这里,了解 mPaaS 消息推送服务,快速集成多家厂商 Push 通道,有效提 ...

  9. 低开开发笔记(五):修bug-深拷贝与浅拷贝

    好家伙   今天遇到一个bug 0.问题描述 描述如下:  代码如下: copynodefunc() { this.copynode = this.model.selected }, affixnod ...

  10. C#/C++ 通过ODBC连接OceanBase Oracle租户

    概述 近期我们项目正处于将Oracle数据库迁移到OceanBase Oracle租户模式的阶段.考虑到我们项目采用了C++和C#混合开发,并且使用了多种技术,因此存在多种数据库连接方式.然而,针对C ...