js函数既可以接收单个参数也可以接收数组的方法
2023-09-11 14:19:39 时间
-
在cesium中,绘制几何图形,一次可以绘制一个,也可以绘制多个;所以很多方法就需要支持传入一个图元信息,也支持传入多个图元信息;
核心思想是:无论是单个参数还是数组,进入函数后都把它放入一个数组中,然后把这个数组展开成一维数组;
下面是3种实现这种函数的方法
1、无论是数组还是单个值都用数组的concat方法并入数组(虽然只是展平一层,但是已经满足了日常的开发需求)
function fnConcat(param) { const data = [].concat(param); }
2、用es6的flat方法展平数组(可接受单个值和多维数组)
function fnFlat(param) { let data = [param].flat(Infinity); }
3、手动写一个数组展平的方法(可接受单个值和多维数组)
展平数组的方法:
function flatten(arr) { return [].concat( ...arr.map(item => Array.isArray(item) ? flatten(item) : item) ) }
在需要用到的函数中使用:
function fnFlatten(param) { const data = flatten([param]); }
-
相关文章
- [Node.Js] Session 保存用户信息
- web项目中关于引入JS/css文件, 浏览器console出现 net::ERR_ABORTED错误的解决方法
- js+jquery动态设置/添加/删除/获取元素属性的两种方法集锦对照(动态onclick属性设置+动态title设置)
- js apply/call/caller/callee/bind使用方法与区别分析
- 【程序猿技术】Js中去除数组中重复元素的4种方法
- js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符
- chosen.jquery.js 搜索框只能从头匹配的解决思路+方法
- js 滚动监听,核心方法
- 【JS】js创建Object对象和构造函数的多种方法(综合示例)
- 原生JS获取DOM元素的8种方法
- js全局对象Math对象(数学运算) - 8种属性/20种方法与使用
- JS常用方法函数
- js中判断数组中是否包含某元素的方法
- js遍历删除数组中不符合条件的元素
- 原生JS实现的h5小游戏-植物大战僵尸
- JS数组reduce()方法详解及高级技巧
- JS中的let和var的区别
- JS获取标签内容的方法
- js数组方法汇总
- JS中map、forEach、filter、reduce等Array新增方法的区别
- jquery.validate.js 应用示例
- js 的each()方法遍历对象和数组
- 【cocos2d-js官方文档】五、Cocos2d-JS v3.0的新Action API
- 原生js源码之Array的reduce方法
- 原生js源码之Array数组filter方法
- 原生js源码之JavaScript的trim方法
- 原生js源码之JavaScript的call方法,自己来实现
- js获取DIV的位置坐标的三种方法
- JS方法转字符串
- JS类、对象、方法、prototype、_proto_