ES(JavaScript)内置类型及方法

类型

  • 6种原始类型
    • Boolean
    • String
    • Null
    • undefined
    • Number
    • Symbol(ES6新定义)
  • 引用类型
    • Object
    • Function

方法

typeof

  • typeof true // boolean
  • typeof 'string' // string
  • typeof null // object
  • typeof undefined // undefined
  • typeof 123 // number
  • typeof {key: 'value'} // object
  • typeof function(){return 'i\'m a function} // function

instanceof

let obj = {}
let arr = []
obj instanceof Object // true
arr instanceof Object // true
arr instanceof Array // true
复制代码

类型转换

转Boolean
let str = 'string'
!str // false
!!str // true
!!0 // false
!!{} // true
复制代码
对象转基本类型
let obj = {name: 'Damon'}
JSON.stringify(obj) // '{"name":"Damon"}'
obj.toString() // '[object Object]'
obj.toLocaleString() // '[object Object]'
复制代码
字符串转数组
let str = 'ILoveAmber'
str.split('') // return [ 'I', 'L', 'o', 'v', 'e', 'A', 'm', 'b', 'e', 'r' ]
str // 'ILoveAmber'
复制代码
字符串转数字
let str1 = '123LoveAmber'
parseInt(str1) // 123
str1 '123LoveAmber'

let str2 = 'LoveAmber123'
parseInt(str2) // NaN

let str3 = '123'
parseInt(str3) // 123
str3 // '123'
str3 * 1 // 123
str3 // '123'
复制代码
数字转字符串
let num = 123
num.toString() // '123'
num.toString(2) // '1111011' 转换为二进制字符串
num // 123

num + '' // '123'
num + 'LoveAmber' // '123LoveAmber'
复制代码

四则运算符

算数运算符

1 + 1 // 2
1 - 1 // 0
1 * 1 // 1
3 / 2 // 1.5
3 % 2 // 1

let a = 1
++a // return 2 & a = 2
a = 1
a++ // return 1 & a = 2

let b = 2
--b // return 1 & b = 1
b = 2
b-- // return 2 & b = 1
复制代码

赋值运算符

let a = 1 // a = 1
a += 1 // return 2 & a = 2
a -= 1 // return 1 & a = 1
a *= 3 // return 3 & a = 3
a /= 3 // return 1 & a = 1
a %= 5 // return 1 & a = 1
复制代码

位运算

ECMAScript 整数有两种类型,即有符号整数(允许用正数和负数)和无符号整数(只允许用正数)。在 ECMAScript 中,所有整数字面量默认都是有符号整数。

有符号整数使用 31 位表示整数的数值,用第 32 位表示整数的符号,0 表示正数,1 表示负数。数值范围从 -2147483648 到 2147483647

NOT 运算
let num = 28
let num2 = ~num // -29
num.toString(2) // '11100'
num2.toString(2) // '-11101'
复制代码
AND
let a = 123
let b = 2
a.toString(2) // '1111011'
b.toString(2) // '10'
let c = a & b // 2
c.toString(2) // '10'
复制代码
OR
let a = 123
let b = 2
let c = a | b // 123
c.toString(2) // '1111011'
复制代码
XOR
let a = 123
let b = 2
let c = a ^ b // 121
c.toString(2) // '1111001'
复制代码
左移运算
let a = 3
a.toString(2) // 11
let c = a << 5 // 96
c.toString(2) // '1100000'
复制代码
有符号右移运算(无符号右移为 >>> )
let a = 3
let c = a >> 5 // 0
c = a >> 1 // 1
复制代码

== , === 操作符

let a = 123
a === 123 // true
a == '123' // true
a === '123' // false

let b = 'abc'
b === 'abc' // true

let obj1 = {name: 'Damon'}
let obj2 = {name: 'Damon'}
obj1 === obj2 // false
obj1 == obj2 // false

let arr1 = [1,2,3]
let arr2 = [1,2,3]
arr1 === arr2 // false
arr1 == arr2 // false

let obj1 = {name: 'Amber'}
let obj2 = obj1
obj1 == obj2 // true
obj1 === obj2 // true
复制代码

比较运算符

123 > 1 // true
'123' > '1' // true
'abc' > 'a' // true
'abc' > 'ad' // false
复制代码

转载于:https://juejin.im/post/5b517bcce51d4519945fe1c0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值