lodash源码分析每日一练 - 数组 - join

今日分享:

每一步都是曼妙的风景~

_.join(array, separator=',')

使用:

_.join(array, separator=',')

使用示例:

js 复制代码
_.join(['a', 'b', 'c'], '~');
// => 'a~b~c'

尝试手写:

①返回新字符串 ②默认","连接

js 复制代码
    let join_arr = [2,3,4,5];
    function my_join (arr , separator = ',') {
    	if(arr == null) return '';
        let str = arr[0];
        for(let i = 1; i < arr.length; i++){
            str+=separator + arr[i]
        }
        return str;
    }
    console.log(my_join(join_arr))

源码方案:

js 复制代码
var arrayProto = Array.prototype;
var nativeJoin = arrayProto.join;
function join(array, separator=',') {
  return array == null ? '' : nativeJoin.call(array, separator);
}

备注

Array.prototype.join() 就可以快速实现。

相关推荐
finyouIT11 小时前
锚点实现了点击导航平滑滚动到页面指定位置的三种方法
javascript·css
han_hanker11 小时前
重新认识枚举enum
开发语言
狂炫冰美式11 小时前
凌晨睡不着,我给台风巴威写了个追踪网站
前端·后端·github
雪隐12 小时前
用Flutter做背单词APP-01服务器?不存在的,我家里就有
前端·人工智能·后端
鹏易灵12 小时前
C++——8.移动语义初探(移动构造、移动赋值)
开发语言·c++·php
2601_9623413012 小时前
计算机毕业设计之jsp考研在线复习平台
java·大数据·开发语言·hadoop·python·考研·课程设计
凯瑟琳.奥古斯特12 小时前
力扣1008:前序重建BST
开发语言·c++·算法·leetcode·职场和发展
用户22046039586812 小时前
ES模块和commonJS两种标准下中实现__dirname?一篇文章教你理清楚
前端
2zcode13 小时前
项目文档:基于MATLAB图像处理的饮料瓶灌装液位检测系统设计与实现
开发语言·图像处理·matlab
犹豫的大炮13 小时前
jQuery最核心的基础设施之一——数据缓存模块进化史
前端·缓存·jquery