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 相关文章推荐
JQuery的html(data)方法与&amp;lt;script&amp;gt;脚本块的解决方法
Mar 09 Javascript
javascript转换字符串为dom对象(字符串动态创建dom)
May 10 Javascript
JavaScript 模拟类机制及私有变量的方法及思路
Jul 10 Javascript
jquery实现html页面 div 假分页有原理有代码
Sep 06 Javascript
JS拖动鼠标画出方框实现鼠标选区的方法
Aug 05 Javascript
jquery validate和jquery form 插件组合实现验证表单后AJAX提交
Aug 26 Javascript
JavaScript获取浏览器信息的方法
Nov 20 Javascript
原生JS实现N级菜单的代码
May 21 Javascript
纯js实现的积木(div层)拖动功能示例
Jul 19 Javascript
Vue页面跳转动画效果的实现方法
Sep 23 Javascript
如何使用vuex实现兄弟组件通信
Nov 02 Javascript
JavaScript仿京东轮播图效果
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
跟我学Laravel之请求与输入
2014/10/15 PHP
php上传文件常见问题总结
2015/02/03 PHP
Zend Framework上传文件重命名的实现方法
2016/11/25 PHP
如何修改yii2.0自带的user表为其它的表
2017/08/01 PHP
PHP抽象类基本用法示例
2018/12/28 PHP
解决在laravel中leftjoin带条件查询没有返回右表为NULL的问题
2019/10/15 PHP
JavaScript Object的extend是一个常用的功能
2009/12/02 Javascript
javascript天然的迭代器
2010/10/29 Javascript
jquery序列化表单以及回调函数的使用示例
2014/07/02 Javascript
JS随机调用指定函数的方法
2015/07/01 Javascript
Angular2学习笔记——详解路由器模型(Router)
2016/12/02 Javascript
jquery与ajax获取特殊字符实例详解
2017/01/08 Javascript
JS排序之冒泡排序详解
2017/04/08 Javascript
Bootstrap进度条与AJAX后端数据传递结合使用实例详解
2017/04/23 Javascript
nodejs连接mysql数据库及基本知识点详解
2018/03/20 NodeJs
JS实现table表格内针对某列内容进行即时搜索筛选功能
2018/05/11 Javascript
axios向后台传递数组作为参数的方法
2018/08/11 Javascript
Angularjs Ng_repeat中实现复选框选中并显示不同的样式方法
2018/09/12 Javascript
vuejs+element UI点击编辑表格某一行时获取内容填入表单的示例
2018/10/31 Javascript
Vue如何获取数据列表展示
2019/12/11 Javascript
[43:26]完美世界DOTA2联赛PWL S2 Forest vs Rebirth 第二场 11.20
2020/11/23 DOTA
Python环境下搭建属于自己的pip源的教程
2016/05/05 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
2018/01/10 Python
python使用jieba实现中文分词去停用词方法示例
2018/03/11 Python
pycharm 解除默认unittest模式的方法
2018/11/30 Python
python yield关键词案例测试
2019/10/15 Python
Python 输出详细的异常信息(traceback)方式
2020/04/08 Python
在Matplotlib图中插入LaTex公式实例
2020/04/17 Python
Python QT组件库qtwidgets的使用
2020/11/02 Python
python通过cython加密代码
2020/12/11 Python
HTML5中的进度条progress元素简介及兼容性处理
2016/06/02 HTML / CSS
Feelunique美国:欧洲大型的在线美妆零售电商
2018/11/04 全球购物
周年庆典邀请函范文
2014/01/23 职场文书
团队会宣传标语
2014/10/09 职场文书
总结Pyinstaller打包的高级用法
2021/06/28 Python
Python进行区间取值案例讲解
2021/08/02 Python