javascript中数组方法汇总


Posted in Javascript onJuly 07, 2015

js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了,先给个我测试的代码^-^

var arr = new Array();
arr[0] = "aaa";
arr[1] = "bbb";
arr[2] = "ccc";
//alert(arr.length);//3
arr.pop();
//alert(arr.length);//2
//alert(arr[arr.length-1]);//bbb
arr.pop();
//alert(arr[arr.length-1]);//aaa
//alert(arr.length);//1
 
var arr2 = new Array();
//alert(arr2.length);//0
arr2[0] = "aaa";
arr2[1] = "bbb";
//alert(arr2.length);//2
arr2.pop();
//alert(arr2.length);//1
arr2 = arr2.slice(0,arr2.length-1);
//alert(arr2.length);//0
arr2[0] = "aaa";
arr2[1] = "bbb";
arr2[2] = "ccc";
arr2 = arr2.slice(0,1);
alert(arr2.length);//1
alert(arr2[0]);//aaa
alert(arr2[1]);//undefined

shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined

var a = [1,2,3,4,5];
var b = a.shift(); //a:[2,3,4,5]  b:1

unshift:将参数添加到原数组开头,并返回数组的长度

var a = [1,2,3,4,5];
var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5]  b:7

注:在IE6.0下测试返回值总为undefined,FF2.0下测试返回值为7,所以这个方法的返回值不可靠,需要用返回值时可用splice代替本方法来使用。

pop:删除原数组最后一项,并返回删除元素的值;如果数组为空则返回undefined

var a = [1,2,3,4,5];
var b = a.pop(); //a:[1,2,3,4]  b:5 //不用返回的话直接调用就可以了

push:将参数添加到原数组末尾,并返回数组的长度

var a = [1,2,3,4,5];
var b = a.push(6,7); //a:[1,2,3,4,5,6,7]  b:7

concat:返回一个新数组,是将参数添加到原数组中构成的

var a = [1,2,3,4,5];
var b = a.concat(6,7); //a:[1,2,3,4,5]  b:[1,2,3,4,5,6,7]

splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,...

var a = [1,2,3,4,5];
var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5]  b:[3,4]
var b = a.splice(0,1); //同shift
a.splice(0,0,-2,-1); var b = a.length; //同unshift
var b = a.splice(a.length-1,1); //同pop
a.splice(a.length,0,6,7); var b = a.length; //同push

reverse:将数组反序

var a = [1,2,3,4,5];
var b = a.reverse(); //a:[5,4,3,2,1]  b:[5,4,3,2,1]

sort(orderfunction):按指定的参数对数组进行排序

var a = [1,2,3,4,5];
var b = a.sort(); //a:[1,2,3,4,5]  b:[1,2,3,4,5]

slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组

var a = [1,2,3,4,5];
var b = a.slice(2,5); //a:[1,2,3,4,5]  b:[3,4,5]

join(separator):将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符

var a = [1,2,3,4,5];
var b = a.join("|"); //a:[1,2,3,4,5]  b:"1|2|3|4|5"

再给个利用数组模拟javaStringBuffer处理字符串的方法:

/**
* 字符串处理函数
*/
function StringBuffer()
{
var arr = new Array;
this.append = function(str)
{
  arr[arr.length] = str;
};
 
this.toString = function()
{
  return arr.join(""); //把append进来的数组ping成一个字符串
};
}

今天在应用中突然发现join是一种把数组转换成字符串的好方法,故封装成对象使用了:

/**
* 把数组转换成特定符号分割的字符串
*/
function arrayToString(arr,separator)
{
if(!separator) separator = "";//separator为null则默认为空
  return arr.join(separator);
}
 
/**
* 查找数组包含的字符串
*/
function arrayFindString(arr,string)
{
var str = arr.join("");
  return str.indexOf(string);
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
优化网页之快速的呈现我们的网页
Jun 29 Javascript
myFocus slide3D v1.1.0 使用方法与下载
Jan 12 Javascript
jquery offset函数应用实例
Nov 14 Javascript
javaScript arguments 对象使用介绍
Oct 18 Javascript
jquery组件使用中遇到的问题整理及解决
Feb 21 Javascript
jquery 选取方法都有哪些
May 18 Javascript
在Ubuntu上安装最新版本的Node.js
Jul 14 Javascript
前端js实现文件的断点续传 后端PHP文件接收
Oct 14 Javascript
深究AngularJS如何获取input的焦点(自定义指令)
Jun 12 Javascript
Angular6封装http请求的步骤详解
Aug 13 Javascript
微信小程序实现底部导航
Nov 05 Javascript
使用pm2部署node生产环境的方法步骤
Mar 09 Javascript
jQuery原型属性和原型方法详解
Jul 07 #Javascript
在JavaScript中访问字符串的子串
Jul 07 #Javascript
jQuery.each使用详解
Jul 07 #Javascript
JavaScript中字符串拼接的基本方法
Jul 07 #Javascript
简单介绍JavaScript中字符串创建的基本方法
Jul 07 #Javascript
浅谈JavaScript中运算符的优先级
Jul 07 #Javascript
浏览器中url存储的JavaScript实现
Jul 07 #Javascript
You might like
php ajax 静态分页过程形式
2011/09/02 PHP
老生常谈php 正则中的i,m,s,x,e分别表示什么
2017/03/02 PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
2019/10/15 PHP
Laravel5.1 框架控制器基础用法实例分析
2020/01/04 PHP
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
2009/02/17 Javascript
根据鼠标的位置动态的控制层的位置
2009/11/24 Javascript
Javascript 实用小技巧
2010/04/07 Javascript
与jquery serializeArray()一起使用的函数,主要来方便提交表单
2011/01/31 Javascript
javascript中数组的sort()方法的使用介绍
2013/12/18 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
node.js中实现kindEditor图片上传功能的方法教程
2017/04/26 Javascript
详解Vue爬坑之vuex初识
2017/06/14 Javascript
垃圾回收器的相关知识点总结
2018/05/13 Javascript
Vue用v-for给循环标签自身属性添加属性值的方法
2018/10/18 Javascript
jQuery实现合并表格单元格中相同行操作示例
2019/01/28 jQuery
vue 动态设置img的src地址无效,npm run build 后找不到文件的解决
2020/07/26 Javascript
微信小程序淘宝首页双排图片布局排版代码(推荐)
2020/10/29 Javascript
pygame学习笔记(4):声音控制
2015/04/15 Python
Python 常用 PEP8 编码规范详解
2017/01/22 Python
python类的方法属性与方法属性的动态绑定代码详解
2017/12/27 Python
Python 解决中文写入Excel时抛异常的问题
2018/05/03 Python
Tensorflow 查看变量的值方法
2018/06/14 Python
python通过微信发送邮件实现电脑关机
2018/06/20 Python
从列表或字典创建Pandas的DataFrame对象的方法
2019/07/06 Python
详解Python3定时器任务代码
2019/09/23 Python
windows10 pycharm下安装pyltp库和加载模型实现语义角色标注的示例代码
2020/05/07 Python
使用pytorch实现论文中的unet网络
2020/06/24 Python
六种酷炫Python运行进度条效果的实现代码
2020/07/17 Python
CSS3感应鼠标的背景闪烁和图片缩放动画效果
2014/05/14 HTML / CSS
什么是会话Bean
2015/05/14 面试题
装饰活动策划方案
2014/02/11 职场文书
小学教师个人先进事迹材料
2014/05/17 职场文书
工会工作个人总结
2015/03/03 职场文书
大学生社会实践感想
2015/08/11 职场文书
2016银行求职自荐信
2016/01/28 职场文书
Ajax异步刷新功能及简单案例
2021/11/20 Javascript