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() 就可以快速实现。

相关推荐
Jmyd01234 小时前
Web端3D营销展厅技术实现路径:从素材上云到线索回流的数据链路
前端·3d·性能优化·三维数字化
半个落月4 小时前
LangChain Agent 中间件实战(上):生命周期、状态、短路与工具包
javascript·langchain
砚凝霜4 小时前
【软考信息安全】第二十二章 Web服务器安全分析与增强——Apache与IIS
服务器·前端·安全
半个落月4 小时前
LangChain Agent 中间件实战(下):DeepAgents文件权限、长期记忆与对话摘要
javascript·langchain
程序猿追5 小时前
kotlin-retry 接入鸿蒙后,怎样确认它真的会停止重试
开发语言·kotlin·harmonyos
我是人✓5 小时前
Java文件上传三方式对比:从传统到SpringBoot
java·开发语言
智能直播5 小时前
网络RTMP拉流不卡顿、声音不同步,一文讲透缓冲区、时间戳
开发语言·ffmpeg·php·音视频·视频编解码
墨云安全6 小时前
内网资产无法暴露到公网,怎么做安全检测?2026 年内网渗透测试的落地路径
开发语言·安全·网络安全·渗透测试·php
u0111026756 小时前
JPG、PNG、WebP 怎么选?按透明度、体积和使用场景做判断
前端·javascript·vue.js·图像处理·ai作画
摇滚侠6 小时前
《计算机是如何工作的:人人都能懂的计算机软硬件工作原理》第 9 章 机器码与汇编语言 阅读笔记 9
java·开发语言·笔记