javascript实战笔记
Posted 仲夏你的梦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript实战笔记相关的知识,希望对你有一定的参考价值。
1.flat() - 数组扁平化
flat()
会按照指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并,返回新数组
let arrayOne = [0, 1, 2, [3]]
arrayOne.flat() // [0, 1, 2, 3]
let arrayTwo = [0, 1, 2, [[[3]]]];
arrayTwo.flat(2) // [0, 1, 2, [3]]
arrayTwo.flat(3) // [0, 1, 2, 3, 4]
//使用 Infinity,可展开任意深度的嵌套数组
let arrThree = [1, 2, [3, 4, [5, 6, [7, 8, [9, 10]]]]]
arrThree.flat(Infinity) // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
// flat()方法会移除数组中的空项
let arrFour = [1, 2, , , 3, 5]
arrFour.flat() // [1, 2, 3, 5]
2.includes - 判断数组有某个指定的值
includes()
方法用来判断一个数组中是否包含某个指定的值,包含则返回 true
,否则返回 false
let arr = ['123', '456', '789']
arr.includes('123') // true
arr.includes('134') // false
arr.includes('789',1) // true 从下标1开始筛选
注:使用includes()查找字符串是区分大小写的
3.Object.values() - 返回对象所有值(数组)
let obj =
name: "Frazire",
age: 28,
like: "music"
Object.values(obj) // [ 'Frazire', 28, 'music' ]
4.Object.keys
() - 返回对象所有键(数组)
let obj =
name: "Frazire",
age: 28,
like: "music"
Object.keys(obj) // [ 'name', age, 'like' ]
5.Object.entries() - 将对象转化为数组 (键值对数组)
let obj =
name: "Frazier",
age: 28,
like: "music"
Object.entries(obj) // [ [ 'name', 'Frazier' ], [ 'age', 28 ], [ 'like', 'music' ]
6.set - 数组去重
let array = [1, 1, 2, 3, 5, 5, 1]
let newArray = [...new Set(array)] // [1, 2, 3, 5]
7.数字转换字符串
const num = 1 + ""
console.log(num) // "1"
console.log(typeof num) // "string"
8.字符串转换数字
let int = +"15"
console.log(int) // 15
console.log(typeof int) // "number"
9.快速幂运算
使用 **
进行幂运算,比使用 Math.power(2,3) 要快得多
2 ** 3 // 8
注:3个2相乘 2*2*2
10.小数快速取整
可以使用 Math.floor()、Math.ceil() 或 Math.round() 将浮点数转换成整数,但有另一种更快的方式,即使用位或运算符 |
23.9 | 0 // 23
-23.9 | 0 // -23
11.at() - 动态取值
.at()支持正索引和负索引
let arr = [1,2,3,4,5]
arr.at(-1) //5
arr.at(-2) //4
12.repeat - 复制字符串)
let str = 'xiaoMing'
str.repeat(2) // 'xiaoMingxiaoMing'
不定时更新中······
以上是关于javascript实战笔记的主要内容,如果未能解决你的问题,请参考以下文章