js的数据类型

122 阅读1分钟

数据类型

  • number
  • string
  • bool
  • symbol
  • undefined
  • null
  • object

字符串string(每个字符两个字节)

转义

  • 错误写法
'it's ok'
  • 正确写法
'it\'s ok' //这就是转义
"it's ok"
`it's ok`
  • 用另一种写法表示你想要的东西
\' 表示 '
\" 表示 "
\n 表示 换行
\r 表示 回车
\t 表示 tab制表符
\\ 表示 \
\uFFFF 表示对应的Unicode字符
\xFF 表示前256Unicode字符

获取字符串的长度(string.length)

base64转码

  • window.btoa(正常的字符串转为base64编码的字符串)

  • window.atob(base64编码的字符串转为原来的字符串)

  • 一般用来隐藏招聘启事里的简历

布尔boolean

if配bool

  • if语句常常需要判断真假
  • if(value){...}else{...}

5个falsy值(falsy就是相当于false但又不是false的值)

分别是:

  • undefined
  • null
  • 0
  • NAN
  • ''

undefined和null的区别

  • 如果一个变量声明了,但没有赋值,那么默认值就是undefined,而不是null
  • 如果一个函数,没有写return,那么默认return
  • 前端程序员习惯上,吧非对象的空值写为undefined

变量声明

var a = 1
let a = 1
const a = 1

let声明

  • 遵循块作用域,及使用范围不能超出{ }
  • 不能重复声明
  • 可以赋值,也可以不赋值
  • 必须先声明再使用,否则报错
  • 全局声明的let变量,不会变成window的属性
  • for循环配合let有奇效

const声明

  • 跟let几乎一样
  • 只有一条不一样,声明时就要赋值,赋值后不能更改

类型转换

  • number => string
String(n)
n+''
  • string => number
Number(s)
parseInt(s)/parseFloat(s)
s - 0
  • x => bool
Boolean(x)
!!x
  • x => string
String(x)
x.toString()

js秘密花园