isNaN() 、Array.isArray()、Object.keys()、Object.values()、Object.assign()、Array.from()、padStart()、padEnd()、parseInt()、parseFloat()、find()、findIndex()
<script>
// 判断是否时一个整数 Number.isInteger( ) 是返回true 不是返回false
let n1 = 10
console.log(Number.isInteger(n1)); // true
// 判断是否是一个无穷 Number.isFinite( ) 不是无穷返回true 是无穷返回false
let n2 = 10
let n3 = Infinity
console.log(Number.isFinite(n2)); // true
console.log(Number.isFinite(n3)); // false
// 保留几位小数 toFixed 返回值是字符串类型
let n4 = 10.599
let n5 = n4.toFixed(2)
console.log(n5); // 10.60
console.log(typeof n5); // string
// ??:类似于 ||
// 判断第一个是否是undefined和null,如果第一个是undefined或者null
// 返回后面的一个,如果第一个不是undefined或者null它返回的是第一个值
let n6 = null ?? 10;
let n7 = 0 ?? 10;
console.log(n6); // 10
console.log(n7); // 0
// ?.
// 如果后端返回给了我们一个对象o,o对象里面还有一个对象a,我们要取到a对象里面的c,
// 由于我们不知道后端返回来的对象里面是否确实包含a,如果我们输出o.a.c,里面又没有a,就会报错,
// 报错就会导致我后续的代码都无法执行,这个时候,我们使用o1.a?.c,如果o里面没有a,返回undefined,不影响后续代码的执行
const o = {
a: {
c: '哈哈'
}
}
console.log(o.a.c); // 哈哈
const o1 = {
b: {
m: '哈哈'
}
}
// console.log(o1.a.c); // 报错
console.log(o1.a?.c); // undefined
</script>