• 【JavaScript 2—基础知识点】:数据类型


    导读:我发现不管是哪一门语言,都会先介绍其发展,语法规则,数据类型,流程控制等。那么,这次,就介绍一下JavaScript中的数据类型,有些看着眼熟,有些不熟。熟的也不是之前认识的,不熟的,也不见得就没见过。


    一、总体概览

    JavaScript中,在目前的学习阶段,大致了解了6个数据类型:Undefined类型,Null类型,Boolean类型,Number类型,String类型,Object类型。在这之中,除开第一、第二和最后一个在之前接触的相对较少,剩下的算是接触的比较多的。所以,从整体上看来,新知识的比例不大,学习起来没太大的难度。

    1,1,图示1(无Number类型)


    1.1.1,图示说明

    1.1.1.1,Undefined、Null、Object的关系

    Null:表示一个空对象引用(指针)。Undefined派生自Null,Null派生自Object。Null的值是属于Null类型,但当其用typeof操作符检测时,会返回Object。

    1.1.1.2,true=1,false=0

    这是不一定的,就是说当var box=true,alert(box==1),这时候,返回的是true。说明这时候,true=1。但是当alert(box===1)或者 alert(typeof box==typeof 1)时,这时候返回false,说明这时候,true不等于1。这是因为,这时候box是布尔型,而1是数值型,在恒等(值和类型都相等)时,它们就不相等了。所以说,true不一定等于1。

    1.1.1.3,布尔值转换规则


    NaN:Not  a  Number,是一个特殊的值,用于表示一个本来要返回数值的操作数未返回数值的情况。也就是类型转换失败,所以,这时候,bool转换返回的也是false。

    1.1.1.4,字符串转义字符



    1.2,图示2(Number类型)


    1.2.1,图示说明

    1.2.1.1,数值定义规范

    注意:有效序列,基数,前导。

    1.2.1.2,对象类型的数值转换

    当对象类型的数值进行转换时(空或非空),其首先通过ValueOf()函数,判断对象类型是否为数值,当返回值=NaN时,则继续调用其toString()函数,继续判断。

    PS:其实对象类型的肯定会返回NaN,但在对象类型转换时,其内部机制是这样使用,而不是由肉眼看到的直接进行转换。


    二、注意事项

    1,当进行字符串转换时,如果不知道数据类型是否为Undefined或Null,那么将启用String()方法,而不是toString()方法。String()方法比之toString()方法更为强大,它能将所有的类型转换为字符串。

    2,Number()是转型函数,可用于任何数据类型。而parseInt()和parseFloat()则专门用于将字符串转为数值。

    2.1,parseInt()和parseFloat()的对比

    2.1.1,相同点

    1,都是专门用于将字符串转为数值的函数

    2,从第一个数值开始,最后一个连续数值结束。如:“12.12Angel12”,parseInt()返回12,parseFloat()返回12.12。

    3,均从字符串的第一位开始解析

    4,自动去掉前置空格

    2.1.2,不同点

    1,parseInt(),小数点非数值,直接去掉;parseFloat()只识别第一个小数点。

    2,parseFloat()不识别十六进制。

    3,parseInt()可提供2个参数:第一个,待转换的字符;第二个,欲转换的进制基数。如:parseInt(“70”,“8”),将返回8进制的结果:56.


    三、学习感受

    每种语言的数据类型,都有雷同之处,但也都有其不同之处。这是外面的东西,而在每种语言之中,也存在着数据类型之间的联系和应用间的区别,及时总结很重要。其实,基本知识的罗列,也是学习中很关键的一步。数据类型总结完了,发现新东西不多,很多都可以用上以前的知识,把新东西放到旧东西里面去,学习起来更轻松。



  • 相关阅读:
    MySQL如何监测是否命中索引? mysql执行计划解读
    mysql修改用户密码的方法及命令
    php7 安装rabbitmq 扩展 amqp扩展
    HAProxy的高级配置选项-Web服务器状态监测
    HAProxy 配置SSL
    nginx request_body 为空 没有参数 ;关于client_max_body_size client_body_buffer_size配置
    mysql 存储过程 函数的 导入导出
    postman设置客户端证书
    python字符串和列表之间相互转换
    python 发邮件 带附件 给多人发邮件
  • 原文地址:https://www.cnblogs.com/hhx626/p/6010427.html
Copyright © 2020-2023  润新知