数组API
1:arr.concat() 作用:合并数组 参数:合并的另一个数组 返回值:有返回值,返回的是一个合并后的新数组,对原数组无影响例:var arr1 = [1, 2]; var arr2 = [3, 4]; var res = arr1.concat(arr2); console.log(res, arr1, arr2) 结果: //[1,2,3,4] //[1,2] //[3,4]
2:arr.push() 作用:在数组尾部添加项 参数:要添加的项 返回值:返回的是添加项之后的数组的长度,会改变原数组,如果同时添加多个项,用逗号隔开即可例:var arr3 = [1, 2, 3, 4] var res1 = arr3.push(5, 6, 7, 10, 11); console.log(res1, arr3) 结果: //9 //[1,2,3,4,5,6,7,10,11]
3:arr.pop() 作用:删除数组中的最后一个 参数:无 返回值:返回的是删除的项,会改变原数组例:var arr3 = [1, 2, 3, 4, 5, 6, 7, 10, 11] var res2 = arr3.pop(); console.log(res2, arr3); 结果: //11 //[1,2,3,4,5,6,7,10]
4:arr.unshift() 作用:向数组的头部添加 参数:添加的项 返回值:返回的是添加后数组的长度,会改变原数组例:var arr3 = [1, 2, 3, 4, 5, 6, 7, 10] var res3 = arr3.unshift(20, 21, 22); console.log(res3, arr3) 结果: //11 //[20,21,22,1,2,3,4,5,6,7,10]
5:arr.shift() 作用:删除数组中的第一个 参数:无 返回值:返回的是删除的项 会改变原数组例:var arr3 = [20, 21, 22, 1, 2, 3, 4, 5, 6, 7, 10] var res4 = arr3.shift(); console.log(res4, arr3); 结果: //20 //[21,22,1,2,3,4,5,6,7,10]
6:arr.toString() 作用:将数组转为字符串 参数:无 返回值:返回转换后的字符串 注意:不会改变原数组 toString()括号中不能添加东西例:var arr6 = [1, 2, 3, 4, 5, 6] var res5 = arr6.toString(); console.log(res5, arr6) 结果: //1,2,3,4,5,6 //[1,2,3,4,5,6]
7:arr.join() 作用:将数组转为字符串 参数:隔开的符号,默认就是英文逗号隔开 返回值:数组转换后的字符串 注意:不改变原数组例:var arr6 = [1, 2, 3, 4, 5, 6] var res6 = arr6.join(); console.log(res6, arr6) 结果: //1,2,3,4,5,6 //[1,2,3,4,5,6]
如果join()括号中添加值 分隔符之后,每两项之间就会使用分隔符隔开 括号中加什么就用什么隔开例:var arr6 = [1, 2, 3, 4, 5, 6] var res7 = arr6.join(';') console.log(res7, arr6) 结果: //1;2;3;4;5;6 //[1,2,3,4,5,6]
8:arr.reverse() 作用:反转数组 参数:无 返回值:返回反转后的数组 注意:原数组改变例:var arr6 = [1, 2, 3, 4, 5, 6] console.log(arr6.reverse(), arr6) 结果: //[6,5,4,3,2,1] //[6,5,4,3,2,1]
9:arr.indexOf() 作用:获取首个指定元素在数组中的索引位置; 返回值:如果指定的值在数组中不存在,则返回-1; 如果存在,则返回该元素第一次出现的索引值例:var arr = [2, 2, 3, 3, 4, 4, 5, 5] var res = arr.indexOf(3) var res1 = arr.indexOf(6) console.log(res, res1) 结果: //2 //-1
10:arr.lastIndexOf() 作用:从后往前去查找首个元素出现的位置;但输出的元素位置还是从前往后数例:var arr = [2, 2, 3, 3, 4, 4, 5, 5] console.log(arr.lastIndexOf(2)) 结果: // 1
11:arr.slice(start,end) 作用:截取 参数:start 开始截取的索引值 end 结束截取的索引值(不包括) 返回值:返回值为截取下来的数组,对原来数组无影响例:var arr1 = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16] var res2 = arr1.slice(0, 10); console.log(res2, arr1) 结果: //[1,2,3,4,5,6,7,8,9,10] //[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
注意:只写一个值 就是从该索引开始往后截取,直到最后例:var res3 = arr1.slice(10) console.log(res3) 结果: //[11,12,13,14,15,16]
12:arr.splice(start,count,newItem) 作用:删除数组中的某些项 参数:start 开始删除的索引位置 count 要删除几个 非必填 如果不填 删除后面所有 如果是0 就不删除 newItem 除了前两个参数(start和count)之后的参数都是新的添加项,从开始删除的位置,添加新的项 返回值:删除的项的数组 注意:会改变原数组例:var arr2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] var res4 = arr2.splice(5, 3, 10, 11) console.log(res4, arr2) 结果: //[6,7,8] //[1,2,3,4,5,10,11,9,10]
13:delete 作用:删除某个,可以删除,但位置会保留,数组长度不会改变例:var arr2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] delete arr2[0] console.log(arr2) 结果: //[ ,2,3,4,5,6,7,8,9,10]
14:arr.sort() 方法用于对数组的元素进行排序。 排序顺序可以是字母或数字,并按升序或降序。 默认排序顺序为按字母升序。例: var arr=['a','c','b','f','j','e'] console.log(arr.sort()) 结果://[ 'a', 'b', 'c', 'e', 'f', 'j' ]
字符串API
1: concat 拼接,连接,字符串例:var str1 = '字' var str2 = '符' var str3 = '串' var res = '拼接'.concat(str1, str2, str3) console.log(res); 结果: //'拼接字符串'
2: indexOf和lastindexOf 跟数组中用法一致例: var str = '好好学习天天向上'; console.log(str.indexOf('学习')); // 结果:2 console.log(str.lastIndexOf('学习')); //结果:2
3: replace() 替代、替换 有返回值 返回的是替代后的字符串 替换多个相同的字符 只会替换掉第一个 不会改变原有字符串例: var str = '男人得有钱钱钱钱钱钱钱钱钱钱'; var res = str.replace('钱', '¥'); console.log(res, str) 结果://'男人得有¥钱钱钱钱钱钱钱钱钱' //'男人得有钱钱钱钱钱钱钱钱钱钱'
4:replace() // 使用正则表达式来替换 // /要匹配的原字符/g(加g代表全部替换),'要替换成的字符'var res = str.replace(/钱/g, '$'); console.log(res) 结果: //'男人得有¥¥¥¥¥¥¥¥¥¥'
5:split(); 将字符串分割为数组 不会改变原来的字符串,返回分割之后的数组var str = 'abcdefg we are student'; var res = str.split(); var res1 = str.split(''); //以''来分割 var res2 = str.split('b'); //以b为分割 b会被分割掉 console.log(res, str, res1, res2); 结果: //["abcdefg we are student"] //'abcdefg we are student' //["a","b","c","d","e","f","g"," ","w","e"," "········n","t"] //["a","cdefg we are student"]
6: slice(start,end) 截取字符串 包括start 不包括end 返回的是截取下来的字符例:var str = 'abcdefg we are student'; res = str.slice(2, 4); console.log(res); res = str.slice(2);//传一个参数 就截取从索引2开始一直截取到最后 console.log(res,str); 结果: //'cd' //'cdefg we are student' //'abcdefg we are student'
7: substr(from,count) 截取 form从哪里开始 count截取几个 返回的也是截取下来的字符串 不影响原字符串例: var str = 'abcdefg'; res = str.substr(2, 4); console.log(res, str); 结果: //'cdef' //'abcdefg'
8: 大小写转换 var str = 'ABNgfdNJGgbGhGhJ' 将英文字符转换为大写,原字符串不变 console.log(str.toUpperCase(), str) 结果: //'ABNGFDNJGGBGHGHJ' //'ABNgfdNJGgbGhGhJ' 将英文字符转换为大写,原字符串不变 console.log(str.toLowerCase(), str) 结果: //'abngfdnjggbghghj' //'ABNgfdNJGgbGhGhJ'
9:trim() 去除字符串中的空白 不影响原字符串var str = ' 今天是 周 三 ' var res = str.trim();//去除字符串两边的空格 console.log(str.trimLeft());//去除字符串左边的空格 console.log(str.trimRight());//去除字符串右边的空格 console.log(str, res) console.log(str.replace(/ /g, '')) 结果: //'今天是 周 三 ' //' 今天是 周 三' //' 今天是 周 三 ' //'今天是 周 三' //'今天是周三'