
JavaScript数组的API
var arr3 = [1, 2, 3, [1, 2, 3, 4, [2, 3, 4]]]; flat1(arr3); // [1,2,3,1,2,3,4,2,3,4]
发布日期:2021-05-10 03:43:13
浏览次数:19
分类:精选文章
本文共 3328 字,大约阅读时间需要 11 分钟。
JavaScript���������API
������ ���������������������/������������������������`flat()`
������������
var arr1 = [1, 2, [3, 4]]; arr1.flat(); // [1, 2, 3, 4]
var arr2 = [1, 2, [3, 4, [5, 6]]]; arr2.flat(2); // [1, 2, 3, 4, 5, 6]
var arr3 = [1, 2, , 4, 5]; arr3.flat(); // [1, 2, 4, 5]
���`flat([depth])`������������������������������������������������������������������������������������������������������������1���
**������������**���������`Array.reduce()`���`Array.concat()`������
const flat1 = function(arr) {
return arr.reduce((pre, cur) => Array.isArray(cur) ? pre.concat(flat1(cur)) : pre.concat(cur), []);
**������������**
������������������������������������������������������������������������������������������������������flat1������������������������������������������������������������������������������������������`set()`
Array.from(new Set([1,2,3,3,4,4])) // [1,2,3,4]
Array.from(new Set([1,2,3,3,4,4,5,6])) // [1,2,3,4,5]
**������������**
ES6���������Set������������������������������������������������������`Array.from`���Set���������������������������������������������������������������`sort()`
[1,3,2,5,4].sort(); // [1,3,2,5,4]
[1,3,2,5,4].sort((a,b) => b - a); // [4,5,2,3,1]
**������������**���������������������������
Array.prototype.bubblesort = function() {
let arr = this, len = arr.length; for (let outer = len; outer >= 2; outer--) {
for (let inner = 0; inner <= outer - 1; inner++) {
if (arr[inner] > arr[inner + 1]) {
[arr[inner], arr[inner + 1]] = [arr[inner + 1], arr[inner]];
} } } return arr;
[3, 4, 2,1].bubblesort(); // [1,2,3,4]
**������������**
���������������������������������������������������"���"��������������������������������������������� ���������������
Math.max(...[1,2,3,4]); // 4
Math.max.apply(this, [1,2,3,4]); // 4
Array([1,2,3,4]).reduce((prev, cur) => { return Math.max(prev, cur); }, 0); // 4
**������������**
���������������������������������������������������������������������������Math������������������reduce��������� ������������
Array([1, 2, 3, 4]).reduce((prev, cur) => prev + cur, 0); // 10
function sum(arr) {
if (arr.length === 0) return 0;
else if (arr.length === 1) return arr[0];
else return arr[0] + sum(arr.slice(1));
}; sum([1, 2, 3, 4]); // 10
**������������**
���������������������������������������������������1������������������������������������������������������������������ ������������
Array([1,2,3]).concat([5,6]); // [1,2,3,5,6]
Array.from({length: 2}, (_, i) => [2*i+1, 2*i+2]).concat(Array.from({length: 3}, (_, i) => [2*i+3, 2*i+4, 2*i+5, 2*i+6, 2*i+7] ));
������������������������
[2,3,5].indexOf(3); // 1
[2,3,5].includes(4); // false
Array([2,3,5]).find((item) => item === 3); // 3
Array([2,3,5]).findIndex((item) => item === 3); // 1
Array([2,3,5]).some(item => item === 3); // true
���������������������
Array.prototype.slice.call(arguments);
Array.prototype.slice.apply(arguments);
Array.from(arguments);
Array.from(arguments);
������������������������
[2,3,5].fill(true, false, true); // [false, false, false]
[2,3,5].fill(false); // [false, false, false]
���������������������������/���������������������
[2,3,5].every(item => item > 2); // false
[2,3,5].some(item => item > 2); // true
���������������������
[2,3,5].filter(item => item > 2); // [3,5]
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月22日 14时47分34秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
centos7一步一步搭建docker jenkins 及自定义访问路径重点讲解
2021-05-09
【Flink】Flink 底层RPC框架分析
2021-05-09
MySQL错误日志(Error Log)
2021-05-09
oracle使用DBMS_RANDOM包生成随机数据
2021-05-09
C++高精度模板
2021-05-09
联赛模拟测试23 D. 真相 思维题
2021-05-09
解决:angularjs radio默认选中失效问题
2021-05-09
windows环境下安装zookeeper(仅本地使用)
2021-05-09
缓冲区溢出实例(一)--Windows
2021-05-09
Badboy录制脚本时,提示脚本错误的解决方法
2021-05-09
PHP一句话木马小总结与SQL语句写一句话木马
2021-05-09
关于计数排序
2021-05-09
Python中字符串前添加r ,b, u, f前缀的含义
2021-05-09
Hadoop学习笔记—Yarn
2021-05-09
__format__
2021-05-09
JSONPath小试牛刀之Snack3
2021-05-09
Jenkins - 部署在Tomcat容器里的Jenkins,提示“反向代理设置有误”
2021-05-09
2017年前端框架、类库、工具大比拼
2021-05-09