数组和字符串

数组中常用的方法

增加、删除、替换

1)push:向数组末尾增加内容

参数(要增加的内容)

返回值:数组的长度

原数组改变

2)pop:删除数组中最后一项

参数:无

返回值:被删除的那一项

原数组改变

3)shift():删除数组中的第一项

返回值:删除的那一项

原数组改变

4)unshift():向数组中最开始的位置添加内容

参数:增加的内容

返回值:新数组的长度

原数组改变

5)splice(n,m):删除 从索引n开始删除m个,返回值:被删除的每一项以一个新数组返回,原数组改变

splice(n,m,x):替换 从索引n开始删除m个,用x替换删除的内容,原数组改变

splice(n,0,x):增加,在索引n前面增加一项,返回值是一个空数组,原数组改变

splice(0):克隆 把原来的数组克隆了一份一模一样的 原数组改变

splice(n):从索引n开始,删除到最末尾的位置

截取,拼接

1)slice(n,m) 从索引n开始找到索引为m处(不包含m),将找到的内容以一个新数组返回,原数组不变

slice(n) 从索引n开始到末尾的位置,将找到的内容以一个新数组返回,原数组不变

slice(0) 、slice() 克隆一份一模一样的

克隆:slice(0) 、slice()、splice(0) ary1.concat()

2)concat():数组拼接,将ary2拼接到ary1的后面,返回一个新数组

将数组转为字符串

1)toString() 把数组转化为字符串,原样转化,原数组不变

var res = ary1.join('+');

console.log(res,ary1);//"1,2,3"

2)join:按照每一个分隔符,把数组中的每一项拼接成一个字符串,原来的数组不变

join('') 以字符串的形式返回

join('+') 每一项之间以+隔开

计算 eval

var ary1 = [10,2,3];

var a = eval(ary1.join('-'));

排序 原数组都改变

从小到大的顺序

ary.sort(function(a,b){

return a-b;

});

从大到小的顺序

ary.sort(function(a,b){

return b-a;

});

倒序

var ary = [1,2,3,4,5,9,6,3];

ary.reverse(); 原数组改变

不兼容的方法(不兼容iE6~iE8)

1)indexOf() 在数组中第一次出现的索引,返回值是对应的索引

2)lastIndexOf() 数组中最后一次出现的索引

如果没有这一项 返回-1

3)forEach 不能改变每一项的值 没有返回值

var ary = [1,2,3,4,5,9,6,3];

var a = ary.forEach(function(item,index){

console.log(item,index);

item 数组中每一项的值

index 每一项的索引

return item;

});

4)map:改变每一项的值 可以输出返回值

var res = ary.map(function(item,index){

console.log(item*10,index);

item 数组中每一项的值

index 每一项的索引

return item;

})

console.log(res);

字符串中常用的方法

1)charAt(索引):获取指定索引位置的字符

2)charCodeAt(索引) 获取指定索引位置的字符的ASCII码

截取 原来的字符串不变

3)substr(n,m) 从索引n开始 截取m个字符

4)substring(n,m) 从索引n开始截取到索引为m处 不包括m

5)slice(n,m) 从索引n开始截取到索引为m处 不包括m 支持负数

以上三个方法都可以只传递一个参数,代表 slice(n) 从索引n开始截取到最末尾的位置

6)indexOf() 字符第一次出现的索引,如果不存在,返回-1 兼容所有浏览器

7)lastIndexOf() 字符最后一次出现的索引 兼容所有浏览器

8)toUpperCase 转为大写

9)toLowerCase 转为小写

10)替换 replace(旧的,新的) 原来的字符串不变

11)trim();去空格

11)split 按照指定的字符将字符串拆分成数组

var str = '1+2+3+4';

console.log(str.split(' '));//拆分成一项

console.log(str.split(''));//每一个字符进行拆分

console.log(str.split('+'));//

Math.min(1,2,3)  取最小值

Math.max(1,2,3)  取最大值

Math.abs(-10);  取绝对值

Math.floor();  向下取整

Math.ceil()  向上取整

Math.round()  四舍五入

Math.random()  取[0,1)之间的随机数  不包括1

获取[n,m]之间的随机整数

Math.round(Math.random()*(m-n)+n)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容