数据类型和运算符属于编程语言的底层知识,一般数据会和条件语句结合使用,制作各种各样的功能。

本文从JS存储数据的编码开始,总结JS在数据类型和运算符之中的重点。

JS如何存储数据?

  1. 一般计算机会将十进制的数字,转换成二进制。
  2. 用十六进制表示二进制,是因为二进制写起来太慢了。
  3. 如果要存储 a 、 b 、 c 、 1 等等字符,需要用编号来表示。
  4. 目前流行的编码方式为 utf-8 。

数据类型

JS中数据类型主要为7种,分别为:

  • 数字(number)
  • 字符串(string)
  • 布尔(bool)
  • 符号(symbol)
  • 空(undefined、null)
  • 对象(object)

简单概括为:四基两空一对象,以下先简单讲解“四基两空”,对象比较复杂,后续会新开文章总结。

数字(number)

常规的写法比较简单,主要是特殊值的写法需要注意:

  • 无穷大有 Infinity 、 -Infinity 、 +Infinity
  • 无法表示的数字为 NaN(Not a number) ,实际上它还是个数字。

字符串(string)

常规写法有3种:

//单引号'hello'//双引号"hello"//反引号`hello`
复制代码

如果想在单引号里面包含单引号怎么办?需要用到转义功能。比如我想打印出'it's' ok.':

//这就是转义'it\'s ok.'
复制代码

布尔(boolean)

只有 true 和 false 两个值。否定运算、相等运算、比较运算都会得到boolean值。

空(undefined和null)

看起来都是空值,但是他们之间也有区别:

  • 声明了变量,但是没有赋值,那么默认值就是 undefined
  • 一个函数,如果没有写 return ,那么默认就是 undefined
  • 习惯上会把非对象的空值写成 undefined ,对象的空值为 null

变量声明

3种声明方式

  1. var,过时且不合理
  2. let,新的且合理
  3. const,声明时,必须赋值,且不能修改

数据类型转换

基本格式为 目标转换类型(需要转换的数据) ,以下展示具体数据类型转换的语法:

  1. number-string,语法为 String(n) ,简写为 n + ''
  2. string-number,语法为 Number(n) 或 parseInt(n) ,简写为 s - 0
  3. x-boolean,语法为 Boolean(x) ,简写为 !!x
  4. x-string,语法为 String(x) ,简写为 x.toString() 。这里要注意,如果想把数字转换为字符串,需要用到特殊写法,否则会报错。
(1).toString()
1..toString()
复制代码