引用类型下的新增属性和方法
一.数字扩展
0b10101//定义二进制
0o767//定义八进制
属性和方法
parseInt()转化成整数
parseFloat()转化成浮点数
isNaN()判断是否是数字
isFinite()判断是否是有限数字
isInteger()是否是整数
二.数学扩展
trunc()取出一个数的整数部分
sign()判断一个数是正数、负数还是零
返回+1正数 返回-1负数 返回+0正零 返回-0负零 返回NaN其他值
cbrt()计算一个数的立方根
imul()返回两个数的乘积,包含正负号
hypot()返回参数的平方和的平方根
signbit()判断正负数,返回布尔值,为负数返回true,其他情况返回false
指数运算:2**3表示2成3遍返回8 相当于2^3
BinInt类型:
js中数字为64位浮点数,整数的精度只能计算到53个二进制位,所以像计算银行的数字,就会超出数字的范围,ES6提出新的BinInt类型,没有位数限制,任何位数的整数都能精确表示
var num=213123n;//BinInt类型
区别:
1.和number不是一个类型,长度无限制
2.尾部必须写n,否则会变成number类型
3.不能用Math对象下的方法
三.字符串扩展
属性和方法
1.includes()判断是否包含某个字符串,返回布尔值
2.startsWith()判断是否以某个字符串开头,返回布尔值
3.endsWith()判断是否以某个字符串结尾,返回布尔值
4.repeat()将字符串重复n次,返回新字符串
5.padStart(长度,字符串)左补全字符串
6.padEnd(长度,字符串)右补全字符串
模板字符串
用反单引号定义,替代原有字符串,为页面上输出变量提供方便
定义方式
var num=12
var str=`年龄为:${num}`
支持多行写作
<div class="box"></div>
<script>
var div=document.querySelector(".box")
var obj={img:"img/about.png",name="张三",age:23}
div.innerHTML+=`<img src='${obj.img}'>
<h1>${obj.name}</h1>
<a href="#">${obj.age}</a>`
</script>
可以写作表达式
div.innerHTML+=`<img src='${obj.img}'>
<h1>${obj.name==""?'no':'yes'}</h1>
<a href="#">${obj.age}</a>`
可以输出变量和调用函数
div.innerHTML+=`<img src='${obj.img}'>
<h1>${obj.name}</h1>
<a href="#">${obj.fun()}</a>`
String.raw()用转义模板字符串
例如:
console.log(String.raw`aa${2+3}`)//aa5