javascript中数组(Array)对象和字符串(String)对象的常用方法总结

本文实例总结了javascript中数组(Array)对象和字符串(String)对象的常用方法。分享给大家供大家参考,具体如下:

综述:笔者经常将数组的方法和字符串的方法混淆,这里写篇日志,做个区分

1.字符串对象

String是JavaScript中的五种基本类型之一。

(1)字符串对象的创建

例1:

var str="Hello world";

或者

var str=new String("Hello world")

(2)charAt()方法

charAt()方法用于返回指定位置的字符串,比如我们想返回str字符串中,第二个字符,则可以写成charAt(1),因为字符串的下标也是从0开始,因此我们返回了第二个字符e;

例2:

var str="Hello world"; alert(str.charAt(1))
//输出e

(3)indexOf(注意O要大写)

indexOf()方法,可返回某个指定的字符串值在字符串中首次出现的位置。

例3:

var str="Hello world";alert(str.indexOf('e'))
//输出1

indexOf()方法还可以有第二个参数规定字符串开始检索的位置

(4)split()方法

split()方法,可以按规则分割字符串。比如:

例4:

var x="86-029-19201920";alert(x.split(-))
//输出 86 029 19201920

split()方法还可以有第二个参数,表示分割的次数,如果省略,默认分割次数不限

(5)substring()方法

substring()方法,可以提取字符串,改方法有两个参数,第一个参数表示起始位置,第二个参数表示终止位置,如果省略第二个参数,默认提取到字符串的结尾。

例5:

var x="Hello world";alert(x.substring(0,4));
//输出Hello

(6)substr()方法

substr()方法,也可以用于提取字符串,不同的是该方法的两个参数,第一个参数表示起始位置,第二个参数表示提出字符串的个数。

例6:

var x="Hello world";alert(x.substr(0,5));
//同样输出Hello

2.数组对象(Array)

(1)数组对象的创建

例1:

var arr=new Array(10) ;
var arr=[1,2,3];
var arr=new Array(1,2,3);
var arr=[];

数组创建的方法一般有这么几种,其中var arr=new Array(1,2,3)这种方式较为少见。

(2)concat()方法

例2:

var x=[1,2,3];
var y=x.concat(4,5);
alert(y);
//输出y为1,2,3,4,5

concat() 方法用于连接两个或多个数组。此方法返回一个新数组,不改变原来的数组。

(3)join()方法

例3:

var x=[1,2,3]; alert(x.join("-"));
//输出的位1-2-3

join()方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。

(4)reverse()方法

数组反转,不会生成新的数组

例4:

var x=[1,2,3];
alert(x.reverse());
//输出的位3,2,1

(5)slice()方法

slice() 方法可从已有的数组中返回选定的元素。slice方法也有2个参数,第一个参数表示开始位置,第二个参数表示结束位置。

(6)splice()方法

splice()方法用于在数组中插入或删除元素的通用方法,不同于concat()和slice()方法,splice()会修改调用的数组。

例6:

var a=[1,2,3,4,5,6,7,8];
a.splice(4);//返回[5,6,7,8],a数组变成了[1,2,3,4]
a.splice(1,2);//返回[2,3],a数组变成了[1,4]
a.splice(1,1);//返回了[4],a数组变成了[1]

注:splice()的第一个参数指定了插入的起始位置,第二个参数指定了应该从数组中插入或删除的元素的个数

splice()返回一个由删除元素组成的数组。

(7)push()和pop()方法

push()和pop()方法允许数组当做栈来使用,push()表示在数组的尾部添加一个或者多个元素,pop()方法则相反。

(8)shift()和unshift()方法

shift()和unshift()方法,非常类似于push()和pop()方法,不同的是前者是在数组的头部而非尾部进行插入和删除操作。

(9)sort()方法

sort()方法使数组中的元素按照一定的顺序排列。

例9:

var x=[1,2,13,113],alert(x.sort())
//默认排序规则为按字母表排序,因为输出 1,113,13,2

如果要使得数组从小到大排序,则为

x.sort(function(a,b){return a-b});

ES5新增的方法

ES5中的数组方法,首先大部分的方法第一个参数接收一个函数,并且对于数组的每个元素调用一次该函数,函数中的参数为第一个参数为数组元素,第二个参数为元素的索引,第三个参数为数组本身

(10)foreach()方法

从头到尾遍历数组,为每个数组调用指定的函数

例10:

var x=[1,2,3,4,5];
alert(x.foreach(function(x,i,a){ a[i]=x*x}))
//返回[1,4,9,16,25]

ES5中还有类似map,filter等方法不一一讨论

3.数组对象和字符串对象方法的互用

我们学过了call和apply函数就能实现字符串方法和数组对象方法的互用

比如:我们想在字符串对象中使用数组对象的方法,可以这样实现:

例:

var x="Hello World";
var y=Array.prototype.slice.call(x);

通过call方法,将x字符串对象转为了y数组对象!!!同理也可以将数组对象转化为字符串对象,

就不在累赘举例了!~

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数组操作技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》及《JavaScript错误与调试技巧总结》

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

(0)

相关推荐

  • JS针对Array的各种操作汇总

    Array应该是我们在平时写js代码中,使用频率最高的,在平时的项目中,很多数据都是可以通过Array来存储.操作等任务.除了Object之外,Array类型应该是js中最常用的类型了. 今天总结一下Array的一些简单和基本的操作,也来巩固下自己的基础知识. 一.如何创建Array(下面直接说数组) 创建数组主要有两种方法,第一种是使用数组构造函数,第二种是使用数组字面量表示法. 1.使用数组构造函数 如:var arr = new Array(); 如果预先知道数组的长度,那么也可以直接给构

  • 判断js的Array和Object的实现方法

    var a = ['hello','world']; console.log(typeof a); // object console.log(a.toString()); // hello,word 字符串 console.log(Object.prototype.toString.call(a)); //[object Array] var b = {'hello':'world'}; console.log(typeof b); // object console.log(b.toStri

  • js删除Array数组中指定元素的两种方法

    本节内容: js删除Array数组中指定元素 方法一, /* * 方法:Array.remove(dx) 通过遍历,重构数组 * 功能:删除数组元素. * 参数:dx删除元素的下标. */ Array.prototype.remove=function(dx) { if(isNaN(dx)||dx>this.length){return false;} for(var i=0,n=0;i<this.length;i++) { if(this[i]!=this[dx]) { this[n++]=

  • 详谈js中数组(array)和对象(object)的区别

    •object 类型: ◦ 创建方式: /*new 操作符后面Object构造函数*/ var person = new Object(); person.name = "lpove"; person.age = 21; /*或者用对象字面量的方法*/ var person = { name: "lpove"; age : 21; } •array类型 ◦ 创建方式: `var colors = new Array("red","blu

  • JavaScript中数组Array.sort()排序方法详解

    JavaScript中数组的sort()方法主要用于对数组的元素进行排序.其中,sort()方法有一个可选参数.但是,此参数必须是函数. 数组在调用sort()方法时,如果没有传参将按字母顺序(字符编码顺序)对数组中的元素进行排序,如果想按照其他标准进行排序,就需要进行传一个参数且为函数,该函数要比较两个值,并且会返回一个用于说明这两个值的相对顺序的数字. 1.对数字数组进行由小到大的顺序进行排序. 代码: var arr = [22,12,3,43,56,47,4]; arr.sort();

  • javascript 中关于array的常用方法详解

    javascript 中关于array的常用方法 最近总结了一些关于array中的常用方法, 其中大部分的方法来自于<JavaScript框架设计>这本书, 如果有更好的方法,或者有关于string的别的常用的方法,希望大家不吝赐教. 第一部分 数组去重,总结了一些数组去重的方法,代码如下: /** * 去重操作,有序状态 * @param target * @returns {Array} */ function unique(target) { let result = []; loop:

  • JavaScript定义数组的三种方法(new Array(),new Array('x','y')

    如下所示: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Co

  • JavaScript中数组Array方法详解

    ECMAScript 3在Array.prototype中定义了一些很有用的操作数组的函数,这意味着这些函数作为任何数组的方法都是可用的. 1.Array.join()方法 Array.join()方法将数组中所有元素都转化为字符串并连接在一起,返回最后生成的字符串.可以指定一个可选的符号或字符串在生成的字符串中来分隔数组的各个元素.如果不指定分隔符,默认使用逗号.注意:此方法不会改变原始数组 var arr = ['a', 'b', 'c']; console.log(arr.join());

  • javascript中数组array及string的方法总结

    一.array的方法总结 会更改原来的的数组 push.unshift方法,返回length.增加值得就返回length,其他返回该元素 pop,shift返回该元素 reverse返回该元素 splice(start,deleteCount,addItem...),从原数组中删除和增加,返回删除的数组 不会改变原来的数组,返回新的数组 concat,join,slice(start,end) 记住这3个是返回新数组,其他的会改变原来的数组 二.Sting的方法总结 不对原始值做改变,都是返回一

  • javascript中数组(Array)对象和字符串(String)对象的常用方法总结

    本文实例总结了javascript中数组(Array)对象和字符串(String)对象的常用方法.分享给大家供大家参考,具体如下: 综述:笔者经常将数组的方法和字符串的方法混淆,这里写篇日志,做个区分 1.字符串对象 String是JavaScript中的五种基本类型之一. (1)字符串对象的创建 例1: var str="Hello world"; 或者 var str=new String("Hello world") (2)charAt()方法 charAt(

  • JavaScript中的Array 对象(数组对象)

     1.创建Array对象方法: --->var arr = [1,2,3];//简单的定义方法 此时可以知道 arr[0] == 1; arr[1] == 2; arr[2] == 3; --->new Array(); var arr = new Array();//定义一个没有任何内容的数组对象,然后以下面的方式为其赋值 arr[0] = "arr0"; arr[1] = "arr1"; arr[2] = "arr2"; ---&

  • javascript中数组和字符串的方法对比

    前面的话 字符串和数组有很多的相同之处,它们的方法众多,且相似度很高:但它们又有不同之处,字符串是不可变值,于是可以把其看作只读的数组.本文将对字符串和数组的类似方法进行比较 可索引 ECMAScript5定义了一种访问字符的方法,使用方括号加数字索引来访问字符串中的特定字符 可索引的字符串的最大的好处就是简单,用方括号代替了charAt()调用,这样更加简洁.可读并且可能更高效.不仅如此,字符串的行为类似于数组的事实使得通用的数组方法可以应用到字符串上 如果参数超出范围或是NaN时,则输出un

  • JavaScript中利用Array filter() 方法压缩稀疏数组

    什么是稀疏数组 数组元素的索引不一定要连续的,它们之间可以有空缺.每个javaScript数组都有一个length属性.针对非稀疏数组,该属性就是数组元素的个数:针对稀疏数组,length比所有元素的个数要大. Array filter() 方法会跳过稀疏数组中缺少的元素,它的返回数组总是稠密的. (1)压缩稀疏数组的空缺: var dense = sparse.filter( function(currentValue) { return true; } ); (2)压缩稀疏数组的空缺,并且删

  • JavaScript中数组常见操作技巧

    效果图如下所示: Tip: 右键在新标签中打开查看清晰大图 下面介绍JavaScript中的数组对象遍历.读写.排序等操作以及与数组相关的字符串处理操作 创建数组 一般使用数组字面量[]创建新数组,除非想要创建指定长度的数组 // good var arr = []; var arr = ['red', 'green', 'blue']; var arr = [ ['北京', 90], ['上海', 50], ['广州', 50] ]; // bad var arr = new Object()

  • JavaScript中数组的22种方法必学(推荐)

    前面的话 数组总共有22种方法,本文将其分为对象继承方法.数组转换方法.栈和队列方法.数组排序方法.数组拼接方法.创建子数组方法.数组删改方法.数组位置方法.数组归并方法和数组迭代方法共10类来进行详细介绍 对象继承方法 数组是一种特殊的对象,继承了对象Object的toString().toLocaleString()和valueOf()方法 [toString()] toString()方法返回由数组中每个值的字符串形式拼接而成的一个以逗号分隔的字符串 [注意]该方法的返回值与不使用任何参数

随机推荐