浅谈Javascript数据类型

  首先js现在有8种数据类型:8种。Number、String、Boolean、Null、undefined、object、symbol、bigInt。

  一. Number   ------------    在javaScript中所有的数值都是number类型,包括整数和浮点数;

          ------------ Number类型使用IEEE754格式来表示整数和浮点值,这也是0.2 + 0.3不等于0.5的原因。

 

   1. number 数字类型。包含:常规数字、NaN。

   2. NaN 非数字 不是一个数,但它率属于数字类型

   3. isnan 检测一个值是否为非有效数字,如果不是有效数字返回true,反之是有效数字返回false

  二. String   ------------   String 对象用于处理文本(字符串)。

          ------------    声明:1. new String(s);   2.String(s);

    1. 当 String() 和运算符 new 一起作为构造函数使用时,它返回一个新创建的 String 对象,存放的是字符串 s 或 s 的字符串表示。

       当不用 new 运算符调用 String() 时,它只把 s 转换成原始的字符串,并返回转换后的值。

    2. 字符串是 JavaScript 的一种基本的数据类型。

    3. String 对象的 length 属性声明了该字符串中的字符数。

    4. String 类定义了大量操作字符串的方法,例如从字符串中提取字符或子串,或者检索字符或子串。

    5. JavaScript 的字符串是不可变的(immutable),String 类定义的方法都不能改变字符串的内容。像 String.toUpperCase() 这样的方法,返回的是全新的字符串

       ,而不是修改原始字符串。

  三. Boolean   ------------   对象表示两个值:"true" 或 "false"。

           ------------   创建 1. new Boolean(value);  2.  Boolean(value);

    1. 当作为一个构造函数(带有运算符 new)调用时,Boolean() 将把它的参数转换成一个布尔值,并且返回一个包含该值的 Boolean 对象。

    2. 如果作为一个函数(不带有运算符 new)调用时,Boolean() 只将把它的参数转换成一个原始的布尔值,并且返回这个值。

    3. 如果省略 value 参数,或者设置为 0、-0、null、""、false、undefined 或 NaN,则该对象设置为 false。否则设置为 true(即使 value 参数是字符串 "false")。

    4. 在 JavaScript 中,布尔值是一种基本的数据类型。Boolean 对象是一个将布尔值打包的布尔对象。Boolean 对象主要用于提供将布尔值转换成字符串的 toString() 方法。

    当调用 toString() 方法将布尔值转换成字符串时(通常是由 JavaScript 隐式地调用),JavaScript 会内在地将这个布尔值转换成一个临时的 Boolean 对象,

    然后调用这个对象的 toString() 方法。

  四. Null(空值)   ------------  是一个表示”无”的对象,转为数值时为0;类型的值只有一个,就是null。

  五. undefined(未定义)   ------------ 值只有一个,就是undefind。

  六. object   ------------  是键值对 (key-value) 的无序复合数据。提供所有 JScript对象通用的功能。

         ------------   object [可以]认为JavaScript中顶级数据类型.在JavaScript绝大多数高级类型对想都是object类型。

        ------------    因为JavaScript是弱类型编程语言,没有类文件的约束所以object类型对象可以在创建后,任意添加属性和函数.

  七. symbol   ------------  ES 6 引入的一个新的数据类型 Symbol,

        ------------  是一种唯一标识符,可用作对象的唯一属性名,这样其他人就不会改写或覆盖你设置的属性值。

          ------------  Symbol是一个不可变的数据类型,用来产生唯一的标识,但是却无法直接访问这个标识。由于他是独一无二的,一般用它作为属性名和常量。

  八. bigInt    ------------  数据类型的目的是比数据类型支持的范围更大的整数值。在对大整数执行数学运算时,以任意精度表示整数的能力尤为重要。

            使用,整数溢出将不再是问题。

         1.可以安全地使用更加准确时间戳,大整数ID等,而无需使用变通方法。

         2.它提供了一种方法来表示大于 2的53次方 - 1 的整数。这原本是 Javascript 中可以用 Number 表示的最大数字。BigInt 可以表示任意大的整数。

         3.不能和任何 Number 实例(隐式类型转换可能丢失信息)混合运算,两者必须转换成同一种类型。在两种类型来回转换时要小心,

          因为 BigInt 变量在转换成 Number 变量时可能会丢失精度。

 

posted @ 2020-11-18 22:31  -流绪微梦  阅读(126)  评论(0)    收藏  举报