JS数组方法join()用法实例分析


Posted in Javascript onJanuary 18, 2020

本文实例讲述了JS数组方法join()用法。分享给大家供大家参考,具体如下:

join()方法

  1. 定义和用法:
    join() 方法用于把数组中的所有元素放入一个字符串。
    元素是通过指定的分隔符进行分隔的。
  2. 语法:arrayObject.join(separator)
  3. 参数:可选,指定要使用的分隔符。
    注:不给join()方法传入任何值,或者给它传入undefined,则使用逗号作为分隔符。
    IE7及更早版本会错误的使用字符串“undefined”作为分隔符。
    数组中的某一项是null或undefined,那么该值在join()、toLocaleString()、toString()和valueOf()方法返回的结果中以空字符串表示。
  4. 返回值:
    返回包含所有数组项的字符串。

代码如下:

Array.prototype.copyJoin = function() {
  var string = '';
  for(var i = 0; i < this.length; i++) {
    // 将数组中各项值为null 或undefined的项改为空字符串。
    if(this[i] == null || this[i] == undefined) {
      this[i] = '';
    }
    // 对数组进行操作
    if(arguments.length == 1 && arguments[0] != undefined) { //指定使用的分隔符
      string += (i < this.length - 1) ? this[i] + arguments[0] : this[i];
    }
    else { // 默认使用的分隔符————逗号
      // if(i < this.length - 1) {
      //   string += this[i] + ',';
      // }
      // else {
      //   string += this[i];
      // }
      string += (i < this.length - 1) ? this[i] + ',' : this[i];
    }
  }
  return string;
}
// 不传任何值或者传入undefined
var arr = [1, 2, 3, 4, 5, 6];
console.log(arr.copyJoin()); // 1,2,3,4,5,6
console.log(arr.copyJoin().length); // 11
console.log(arr.copyJoin(undefined)); // 1,2,3,4,5,6
console.log(arr.copyJoin(undefined).length); // 11
// 传入参数
console.log(arr.copyJoin('||')); // 1||2||3||4||5||6
console.log(arr.copyJoin('||').length);  // 16
// 数组中的某一项是null或undefined
var arr2 = [1, undefined, 2, undefined, 3, 4, 5, 6, 7, null, 8, null, 9];
console.log(arr2.copyJoin()); // 1,,2,,3,4,5,6,7,,8,,9
console.log(arr2.copyJoin().length); // 21
console.log(arr2.copyJoin(undefined)); // 1,,2,,3,4,5,6,7,,8,,9
console.log(arr2.copyJoin(undefined).length); // 21

运行结果:

JS数组方法join()用法实例分析

以上在IE8+ join()方法一样,但是在IE7及更早版本(copyJoin()方法不存在):

arr.join(undefined)); // 1undefined2undefined3undefined4undefined5undefined6
arr.join(undefined).length); // 51
arr2.join(undefined)); // 1undefinedundefined2undefinedundefined3undefined4undefined5undefined6undefined7undefinedundefined8undefinedundefined9
arr2.join(undefined).length); // 117

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
服务端 VBScript 与 JScript 几个相同特性的写法 By shawl.qiu
Mar 06 Javascript
Javascript实现DIV滚动自动滚动到底部的代码
Mar 01 Javascript
javascript计算用户打开网页的停留时间
Jan 09 Javascript
jQuery实现的经典竖向伸缩菜单效果代码
Sep 24 Javascript
JavaScript知识点整理
Dec 09 Javascript
Servlet实现文件上传,可多文件上传示例
Dec 05 Javascript
ztree简介_动力节点Java学院整理
Jul 19 Javascript
浅谈在koa2中实现页面渲染的全局数据
Oct 09 Javascript
swiper实现异形轮播效果
Nov 28 Javascript
JavaScript 函数用法详解【函数定义、参数、绑定、作用域、闭包等】
May 12 Javascript
JS字符串和数组如何实现相互转化
Jul 02 Javascript
解决await在forEach中不起作用的问题
Feb 25 Javascript
JavaScript进制转换实现方法解析
Jan 18 #Javascript
js滚轮事件 js自定义滚动条的实现
Jan 18 #Javascript
vue实现扫码功能
Jan 17 #Javascript
js实现轮播图效果 z-index实现轮播图
Jan 17 #Javascript
js键盘事件实现人物的行走
Jan 17 #Javascript
javascript实现简易的计算器
Jan 17 #Javascript
JavaScript简易计算器制作
Jan 17 #Javascript
You might like
syphon 虹吸式咖啡冲泡冲煮倒水的得与失
2021/03/03 冲泡冲煮
PHP.MVC的模板标签系统(四)
2006/09/05 PHP
PHP 飞信好友免费短信API接口开源版
2010/07/22 PHP
php实现的一个很好用HTML解析器类可用于采集数据
2013/09/23 PHP
去掉destoon资讯内容页keywords关键字自带的文章标题的方法
2014/08/21 PHP
可以文本显示的公告栏的js代码
2007/03/11 Javascript
JavaScipt基本教程之前言
2008/01/16 Javascript
JavaScript 申明函数的三种方法 每个函数就是一个对象(一)
2009/12/04 Javascript
jquery中通过过滤器获取表单元素的实现代码
2011/07/05 Javascript
用jquery和json从后台获得数据集的代码
2011/11/07 Javascript
jquery中dom操作和事件的实例学习 仿yahoo邮箱登录框的提示效果
2011/11/30 Javascript
node.js中的favicon.ico请求问题处理
2014/12/15 Javascript
小白谈谈对JS原型链的理解
2016/05/03 Javascript
jQuery实现为动态添加的元素绑定事件实例分析
2018/09/07 jQuery
基于AngularJs select绑定数字类型的问题
2018/10/08 Javascript
vue监听用户输入和点击功能
2019/09/27 Javascript
[13:21]DOTA2国际邀请赛采访专栏:RSnake战队国士无双,Fnatic.Fly
2013/08/06 DOTA
python提示No module named images的解决方法
2014/09/29 Python
Python实现115网盘自动下载的方法
2014/09/30 Python
对numpy中布尔型数组的处理方法详解
2018/04/17 Python
详解通过API管理或定制开发ECS实例
2018/09/30 Python
django admin.py 外键,反向查询的实例
2019/07/26 Python
python3.6中@property装饰器的使用方法示例
2019/08/17 Python
解决Pytorch 训练与测试时爆显存(out of memory)的问题
2019/08/20 Python
英国著名的小众美容品牌网站:Alyaka
2017/08/08 全球购物
英国时尚女装购物网站:Missguided
2018/08/23 全球购物
金鑫耀Java笔试题
2014/09/06 面试题
自我评价的正确写法
2013/09/19 职场文书
高三自我鉴定怎么写
2013/10/19 职场文书
端午节粽子促销活动方案
2014/02/02 职场文书
关于母亲节的感言
2014/02/04 职场文书
幼儿园家长评语
2014/02/10 职场文书
春游踏青活动方案
2014/08/14 职场文书
县政府领导班子“四风”方面突出问题整改措施
2014/09/23 职场文书
青年联谊会致辞
2015/07/31 职场文书
《失物招领》教学反思
2016/02/20 职场文书