常用数组、字符串的方法

1、indexOf( 数组 || 字符串 ); 作用:返回数组中某个指定元素的位置 (下标)。

(item, start) 两个参数:
item: 必选、查找的元素。 start: 可选参数,规定从何处开始检索元素,如果省略,从数组起始位置开始检索。它的合法取值是StringObject.legth-1。
返回值: Number类型 索引值 元素在数组中的位置,如果没有搜索到则返回 -1 。
兼容:所有主流浏览器都支持 indexOf()方法,IE8及以下不支持该方法。

2、slice( 数组 || 字符串 ); 作用:元素截取,从已有的数组中返回一个数组副本;

(start, end) 两个参数 :
start:参数start是截取的开始数组索引 end :可选参数end是你要截取的最后一个字符的 位置值 加上 1 。
(1) :如果传入的参数是一个,那么将从参数一的索引位置开始截取,一直到数组尾;
(2) :如果传入的参数是一个,并且是一个负数的话,那么他会从数组的后面开始截取;
(3) :如果传入的参数是一个,并且是一个负数的话,并且它的绝对值大于或等于数组的 length , 那么他会截取整个数组。
(4) :如果两个参数都是负数的话,前面的参数小于后面的参数。
注:位置是固定好的,从左往右找,不包含结尾位置的字符。

3、substr(字符串); 作用:在字符串中抽取从 start 下标开始的指定数目的字符。

(start,length)两个参数: start:必须参数、必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。

length:可选参数、子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串

返回值:一个新的字符串。不改变原字符串。

注:ECMAscript 没有对该方法进行标准化,因此反对使用它。

        var str="Hello world!"
 	    console.log(str.substr(3,6))    // lo wor ```

4、substring() 作用:用于提取字符串中介于两个指定下标之间的字符。

(start,end) 两个参数:
start:必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
end:可选。最后一个被提取的字符,不包含最后一个。
返回值:一个新的字符串。不改变原字符串。
注:substring() 和 substr() 方法
相同点:当有一个参数时,两者的功能一样,返回从start指定的位置直到字符串结束的子串。
不同点:有两个参数时 (1) substr(start,length) 返回从start位置开始length长度的子串 (2) substring(start,end) 返回从start位置开始到end位置的子串(不包含end) 注:与 slice() 和substr() 方法不同的是,substring() 不接受负的参数。

5、 splice(数组); 作用:向/从数组中添加/删除项目,然后返回被删除的项目。

(start, howmany, item) 三个参数
start是从数组元素删除开始的位置; howmany删除元素的个数,如果设置为 0,则不会删除项目。
item(item1,…,itemX)添加/替换删除掉的元素(可以是多个元素);

回值:返回被删除掉的元素。
1.删除元素 splice(start,length)

 			var arr = [1,3,5,67,8]
         	console.log(arr.splice(2,2));  //[5, 67]

2.添加元素 splice(start, 0, item)

	        var arr = [1,3,5,67,8]
            arr.splice(2, 0, 2)  //添加元素 2
            console.log(arr);  //    [1, 3, 2, 5, 67, 8]

3.替换元素 splice(start, length, item)—先删除再添加

        var arr = [1,3,5,67,8]
        arr.splice(2, 1, 4,6,7)   //5替换成4,6,7
        console.log(arr);    //   [1, 3, 4, 6, 7, 67, 8]

6、split(字符串); 作用:把字符串分割成片段来创建一个字符串数组。

(‘separator’,‘limit’) 两个参数
separator必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。 limit限制被分割的片段数量;
slice() 、 splice() 、 split() 区别: slice() 和 split() 改变的都是副本,splice()
返回的修改后的内容。

7、for in 循环; 作用:用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作);

语法: for(变量 in 对象) { 执行的代码; }

        var arr = [1,3,45,6,7,888,55];
        for(item in arr) {
            console.log(item);  //遍历每个元素 item
        }

8、数组的添加和删除

push():从尾部添加一个或多个元素。
pop(): 用于删除数组的最后一个元素。
shift():删除数组的第一个元素
unshift(): 向数组的开头添加一个或多个元素。
splice(start, 0, item) 向数组中间添加元素
concat(数组 || 字符串 ); 作用:把两个或多个数组连接起来;

9、join(数组); 作用:把数组中的所有元素放入一个字符串中;数组分割

([‘separator’])一个参数:
separator:指定要使用的分隔符。如果省略默认为逗号为分隔符。
返回值:一个字符串,该字符串是把数组中的所有元素转换为字符串类型。 再通过指定的分隔符连接起来。

        var arr = [1,3,45,6,7,55];
        console.log(arr.join('*'));    // 	1*3*45*6*7*55

10、sort(数组); 作用:用于数组的排序。

([‘sortby’])一个参数:
sortby:规定排序顺序,必须是函数。
返回值:对数组的引用,在原数组上排序,不生成副本。
1>如果调用该方法没有参数,则按照字母顺序进行排序。跟准确的来说是按照字符集编码来排序的。
要实现这一点要先把数组的元素都变成字符串,以便进行比较 。 2>
如果按照其他标准来排序,则需要提供比较函数,该函数要比较两个值,然后返回一个 用于说明这两个值的相对顺序的数字。
比较函数应该具有两个参数a和b,其返回值如下:
. 若a<b ,则排序后的数组中a应该出现在b的前面,则返回一个小于0的值。 . 若a==b ,则返回0。 . 若a>b
,则返回一个大于0的值。
返回值:对数组的引用,数组在原数组上进行排序,不生成副本。

        var arr = [1,3,45,6,7,888,55];
        arr.sort(function(a, b) {
            return a - b   //  a - b 升序   b - a 降序
        }) ;
        console.log(arr);    //  [1, 3, 6, 7, 45, 55, 888]

11、charAt(字符串); 作用:返回指定位置的字符。

(‘index’)一个参数:
index表示字符串中某个位置的数字。即字符串的下标。
注:如果index不在0—string.length之间,该方法返回一个空字符串。
返回值:查找的字符。

12、match(字符串); 作用:在字符串中检索指定的值,或者找到一个或多个正则表达式的匹配。

(‘searchvalue’,‘regexp’)两个参数(取其中一个):
searchvalue规定要检索的字符串。
regexp规定要匹配的模式RegExp对象。如果该参数不是RegExp对象,则需要首先把它传递给RegExp
构造函数将其转换为RegExp对象。
返回值:1、如果是检索指定的值,则返回指定值的下标。
    2、如果没有找到检索的值,则返回null。
    3、如果找到了一个或多个匹配子串,则返回一个数组。不过全局匹配返回的数组的内容
    与前者大不相同,它的数组元素中存放的是 stringObject 中所有的匹配子串,而且也没有
     index 属性或 input 属性。
    4、如果没找到则返回null。

        var str = "121Hello 2world!44";
        rel = /\d+/g;   //全局匹配多个数字
        console.log(str.match(rel));	   // ["121", "2", "44"]

13、replace(字符串); 作用:用于把一些字符替换另一些字符,或替换一个正则表达式匹配的子串。

语法:str.replace(regexp/substr,replacement)
regexp/substr规定子字符串或要替换的模式的RegExp对象。 replacement规定替换文本或生成替换文本的函数。
返回值:替换之后的一个新的字符串。

        var str="Welcome to Word!"
        console.log(str.replace(/o/g,'H'));   //将所有的o 替换成H

14、toUpperCase(字符串); 作用:把字符串转换为大写。toLowerCase(); 作用:把字符串转换成小写。

没有参数 返回值:一个新的字符串,String里面的小写字符全变成大写的。不改变原有字符串。

        var str="Welcome to Microsoft!"
        console.log(str.toUpperCase());
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值