最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

JavaScript数据类型学习笔记_javascript技巧

来源:动视网 责编:小采 时间:2020-11-27 21:49:22
文档

JavaScript数据类型学习笔记_javascript技巧

JavaScript数据类型学习笔记_javascript技巧:ECMAscript 中有5种简单的数据类型,也被称为基本数据类型:Undefined、Null、Boolean、Number和String。还有一种复杂的数据类型——Object。 Undefined 类型 在使用var 声明变量但未对其进行初始化时,这个变量的值就是undefined。如: var
推荐度:
导读JavaScript数据类型学习笔记_javascript技巧:ECMAscript 中有5种简单的数据类型,也被称为基本数据类型:Undefined、Null、Boolean、Number和String。还有一种复杂的数据类型——Object。 Undefined 类型 在使用var 声明变量但未对其进行初始化时,这个变量的值就是undefined。如: var


ECMAscript 中有5种简单的数据类型,也被称为基本数据类型:Undefined、Null、Boolean、Number和String。还有一种复杂的数据类型——Object。

Undefined 类型

在使用var 声明变量但未对其进行初始化时,这个变量的值就是undefined。如:

如果没有声明变量则会出现下面这种错误。如:

但是用typeof对其进行执行时,不管有没有声明都会返回undefined 值。如:

Null 类型

使用typeof检测null 时会返回"object"。如:

实际上undefined 值是派生自null 值的,因此他们相等都会返回true。如:

这里要注意的是,只要意在保存对象的变量还没有真正保存对象,就应该明确地让该变量保存null 值,此举有助于区分null 和 undefined。如:

Boolean 类型

要将一个值转换为其对应的Boolean 值,可以使用转型函数Boolean()。如:

《JavaScript高级编程设计》一书中的3.4.4中给出了关于各种数据类型及其对应的转换规则表格。大概有以下几种:

  • 数据类型为String 时,任何非空字符串都会转换为true;
  • 数据类型为Number 时,除了0 和NaN 会被转换为false 之外,其他都会转换为true;
  • 数据类型为Object 时,除了null 之外,都会转换为true;
  • 数据类型为Undefined 时,n/a 会被转换为true,undefined 会被转换为false;
  • 这里要注意的是,if 语句经常使用自动执行响应的Boolean 转换作为条件。如:

    Number 类型

    除了可以以十进制表示之外,整数还可以通过八进制或者十六进制的字面值来表示,其中八进制字面值的第一位必须是0,然后是八进制数字序列(0~7)。如:

    十六进制字面值的前两位必须是0x,后面跟任何十六进制数(0~9 及 A~F)。如:

    浮点数值

    这里要注意的是,永远不要比较特定的浮点数值。如:

    数值范围

    ECMAScript 能够表示的最大和最小数值保存在Number.MAX_VALUE 和Number.MIN_VALUE 之中。要想确定一个数值是不是有穷的,可以使用isFinite()函数。如:

    NaN

    0 除以0 会返回NaN,正数除以0 会返回Infinity,复数则会返回-Infinity。其次,NaN 与任何数值都不相等,包括它本身。另外函数isNaN()可以帮助我们确定这个参数是否“不是数值”。如:

    数值转换

    有三个函数可以把非数值转换为数值:Number()、parseInt()、parseFloat()。

    Number()的转换规则如下:

    如果是Boolean 值,true 和false 会被转换为1 和0。
    如果是数字值,则不变。
    如果是null 值,则转换为0。
    如果是undefined,返回NaN。
    如果是字符串则遵循下列规则:

  • 如果只有数字,则转换为十进制数值。
  • 如果是浮点格式,则将其转换成对应的浮点数值。同样也会忽略前导零。
  • 如果是十六进制格式则会转换成十进制数。
  • 如果字符串是空的,则会转换成0。
  • 其他情况则会转换为NaN。
  • 具体看下面的例子:

    parseInt()的转换规则如下:

  • 如果第一个字符不是数字字符或者符号,parseInt()会返回NaN。
  • 用parseInt()转换空字符串会返回NaN。
  • 如果第一个字符是数字字符,它会继续解析第二个字符,直到遇到了一个非数字字符.
  • 下面是具体的例子:

    另外需要注意的是,ECMAScript 5已经不具备解析八进制值的能力了所以为了消除这个问题,可以为这个函数提供第二个参数:转换时使用的基数(多少进制),具体如下:

    多数情况下,最好默认设置成10进制。

    parseFloat()的转换规则如下:

  • 与parseInt()类似,不同的是字符串第一个小数点是有效的,而从第二个小数点开始包括第二个小数点是无效的。
  • 他不能解析十六进制数值!!!
  • 他只能解析十进制数值!!!
  • 他没有用第二个基数来指定进制的用法。
  • 下面是具体的例子:

    String 类型

    要把一个值转换成字符串有两种方式。第一种是使用几乎每个值都有的toString()方法。如下:

    另外需要注意的是,null 和 undefined 不能转换。

    如果不知道需要转换的数值是否是null 或者undefined 则应该使用转型函数String(),如果是null 会返回"null"如果是undefined 会返回"undefined"。如下:

    另外在下一篇文章中再详细介绍Object 类型。

    文档

    JavaScript数据类型学习笔记_javascript技巧

    JavaScript数据类型学习笔记_javascript技巧:ECMAscript 中有5种简单的数据类型,也被称为基本数据类型:Undefined、Null、Boolean、Number和String。还有一种复杂的数据类型——Object。 Undefined 类型 在使用var 声明变量但未对其进行初始化时,这个变量的值就是undefined。如: var
    推荐度:
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top