
js基础方法
TinaSlowDown
Code Your World
展开
-
数组排序,空值一直排最后
数组排序希望实现: 不论升序还是降序,怎样实现空值始终排在最后; 如下数组 let arr = [null,"a", "b", null, "d",undefined,""] 希望排列结果是: // 升序 ["a", "b", "d", "", null, null, undefined] // 降序 ["d", "b", "a", "", null, null, undefined] 实现方法: onChangeOrder(list,order){ list.sort((a,b)=>原创 2021-06-02 11:29:36 · 2411 阅读 · 0 评论 -
生成一个元素值为‘a’,长度为100的数组
测试一个问题时,希望创建一个数组变量,长度为100,每个元素值为‘a’。思路就是先创建一个length为100的数组,再用map方法把每个元素转为’a’,写法如下: let arr = Array(100).map(item=>item='a') 结果瞬间打脸,得到的数组是这样的[empty × 100],根本不是需要的。 为啥会这样呢,查map在mdn中的定义,发现了一段关键的话: callback is invoked only for indexes of the array which ha原创 2021-04-08 14:51:30 · 752 阅读 · 0 评论 -
js数组基础方法-slice
根据ECMA标准,简单模拟出slice方法的定义: function ArraySlice(start, end) { var array = Object(this); var len = array.length; var start_i = Number(start); var end_i = len; if (!IS_UNDEFINED(end)) end_i = TO_INTEGER(end); if (start_i < 0) { start_i += le原创 2021-03-25 17:38:07 · 224 阅读 · 0 评论