zoukankan      html  css  js  c++  java
  • JS复习之数据类型

    在JavaScript中有5种(Undefined、Null、Boolean、Number、String)简单数据类型和1种(Object)复杂数据类型,用var声明变量

    可以使用typeof方法来检测数据类型

    下面来详细介绍6种数据类型

    1.Undefined类型

      未初始化与未声明的变量值都为undefined,未声明的变量直接使用会导致报错,但是可以用typeof操作符执行判断是可以执行的,也可以显示的声明一个变量值为undefined,但是这样意义不大。

    2.Null类型

      null值表示一个空对象的指针(有些早期浏览器执行typeof null会返回object),null派生自undefined,所以用相等符号(==)判断的时候回返回true,如果希望一个变量用来存储对象,应该在声明时显示的声明为null,表面它是一个指针

    3.Boolean

      boolean值的字面值只有两个,即为‘true’与‘false’,在ECMAScript中所有的值都可以与这两个字面值等价。String类型非空即为true,Number类型任何非零与NaN数字值为true,Object类型任何对象都为true,Undefined只能是false,Boolean是流程控制语句的重要数据类型

    4.Number类型

      最基础的字面量格式是十进制整数,八进制整数要在前面加0,十六进制要在前面加入0x,八进制字面量在严格模式是无效的,在进行计算时都会被化为十进制数

      Number类型的特点

      一.浮点数

        由于浮点数是整数的两倍,因此ECMAScript会不失时机的将浮点转为整数,浮点数可以用科学计数法表示,例如3.14e8就是3.14x10^8,不要测试某个特定的浮点数值

      二.数值范围

        当数值超过最大或最小值时就会被转化为±Infinity,可以用isFinity函数来检测是否超过界限

      三.NaN

        NaN即非数值,任何涉及NaN的操作都会返回NaN,NaN与任何值都不相等,包括自己在内,可以用isNaN来检测是否为非数值。

      四.数值转换

        有三种将其他类型转为Number的方法,Number、parseInt、parseFloat,Number方法可以将所有的非数值转化为数值,另外两个专门用于把字符串转换为数值。

        Number转换规则

          -如果是Boolean值,true和false分别转换为1与0

          -如果是数值只是简单传入返回

          -如果是null,返回0

          -如果是undefined返回NaN

          -如果是字符串,则将其转化为十进制数,如果其本身是十六进制则转成对应的十进制数值,如果是空的则转化为0,如果包含其他字符则转化为NaN

          -如果是对象则调用valueOf()方法,任何依照前面的规则转换返回值。如果转换的结果是NaN,则调用对象的toString方法,然后再次依照前面的规则转换

        parseInt与parseFloat(num,type)方法

          parseInt在解析八进制字面量的字符串时,ES5(十进制)与ES3(八进制)有分歧,好在它接受的第二个参数可以规定转换的进制格式。parseFloat没有这个问题,功能与parseInt基本一致

    5.String类型

      String类型由多个16位Unicode字符组成,里面包含了很多字面量例如: 、 、等等,在旧的浏览器中,字符串的长度改变时会销毁原来的字符串创建新的来填充,所以Ie6种拼接字符串时会明显感觉变慢,可以用自带的toString和String函数来将其他类型转化为字符串

    6.Object类型

      ECMAScript中的对象其实就是一组数据和功能集合,对象可以通过执行New操作符后跟要穿甲的对象类型名称来创建,而创建Object类型的实例并为其添加属性和方法就可以创建自定义对象。

    对对象的详细介绍放到后面的随笔里面再继续深入。

  • 相关阅读:
    257. Binary Tree Paths
    324. Wiggle Sort II
    315. Count of Smaller Numbers After Self
    350. Intersection of Two Arrays II
    295. Find Median from Data Stream
    289. Game of Life
    287. Find the Duplicate Number
    279. Perfect Squares
    384. Shuffle an Array
    E
  • 原文地址:https://www.cnblogs.com/myzsy/p/7788478.html
Copyright © 2011-2022 走看看