String和Array几个常用方法需要掌握:
String:
- slice(start, end):提取字符串的片断,并在新的字符串中返回被提取的部分。不包括end所在的字符,参数可以为负数,返回值:一个新的字符串
- substr(start,length):从起始索引号提取字符串中指定数目的字符。index可以为负数,length可选返回长度,返回值:一个新的字符串
- substring(start,stop):提取字符串中两个指定的索引号之间的字符。参数不能为负数,返回值:一个新的字符串
- split(separator,howmany):把一个字符串分割成字符串数组,分隔符可以是正则表达式或字符串,返回值:一个字符串数组
- match(searchvalue|regexp):找到一个或多个正则表达式的匹配。返回值:存放匹配结果的数组
- replace(regexp|substr,replacement):字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。返回值:一个新的字符串
- search(regexp):检索与正则表达式相匹配的值。返回值:stringObject 中第一个与 regexp 相匹配的子串的起始位置。未找到返回-1
- charAt(index):返回在指定位置的字符。
- concat(stringX,stringX,...,stringX):连接字符串。一般用+号连接字符串
- indexOf(searchvalue,fromindex):返回某个指定的字符串值在字符串中首次出现的位置。如果未找到返回-1
- lastIndexOf(searchvalue,fromindex):返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。如果未找到返回-1
Array:
- slice(start,end):从某个已有的数组返回选定的元素,和String.slice()类似,返回值:返回一个新的数组
- join(separator):把数组中的所有元素放入一个字符串。返回值:一个新的字符串
- splice(index,howmany,item1,.....,itemX):向/从数组中添加/删除项目,然后返回被删除的项目。返回值:包含被删除项目的新数组,如果有的话。
- shift():把数组的第一个元素从其中删除,并返回第一个元素的值。
- unshift():方法可向数组的开头添加一个或更多元素,并返回新的长度。
- pop():方法用于删除并返回数组的最后一个元素。
- push():方法可向数组的末尾添加一个或多个元素,并返回新的长度。
- reverse():方法用于颠倒数组中元素的顺序。
- sort():方法用于对数组的元素进行排序。参数为函数
- concat():方法用于连接两个或多个数组。
1 // slice(start,end) 2 // 提取字符串的片断,并在新的字符串中返回被提取的部分。不包括end所在的字符,参数可以为负数 3 // 返回值:一个新的字符串 4 var str = ‘hello world!‘; 5 console.log(‘======slice======‘); 6 console.log(str.slice(6, 8)); // wo 7 console.log(str.slice(-2)); // d! 8 console.log(str.slice(6, -2)); // worl 9 console.log(str.slice(6)); // world! 10 console.log(‘‘); 11 12 // substr(start,length) 13 // 字符串中抽取从 start 下标开始的指定数目的字符。index可以为负数,length可选返回长度 14 // 返回值:一个新的字符串 15 var str2 = ‘how old are you?‘; 16 console.log(‘======substr======‘); 17 console.log(str2.substr(5)); // ld are you? 18 console.log(str2.substr(-4)); // you? 19 console.log(str2.substr(-4, 2)); // yo 20 console.log(‘‘); 21 22 // substring(start,stop) 23 // 提取字符串中介于两个指定下标之间的字符。参数不能为负数 24 // 其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。 25 // 如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。 26 // 返回值:一个新的字符串 27 var str3 = ‘how old are you?‘; 28 console.log(‘======substring======‘); 29 console.log(str3.substring(5)); // ld are you? 30 console.log(str3.substring(2, 6)); // w ol 31 console.log(str3.substring(6, 2)); // w ol 32 console.log(‘‘); 33 34 // split(separator,howmany) 35 // 方法用于把一个字符串分割成字符串数组,分隔符可以是正则表达式或字符串,howmany可选返回长度 36 // 返回值:一个字符串数组 37 var str4 = ‘jay,jam,jane,jj‘; 38 console.log(‘======split======‘); 39 console.log(str4.split(‘,‘)); // ["jay", "jam", "jane", "jj"] 40 console.log(‘‘); 41 42 // match(searchvalue|regexp) 43 // 在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。 44 // 返回值:存放匹配结果的数组 45 var str5 = ‘jay,33jam,2jane,19jj‘; 46 console.log(‘======match======‘); 47 console.log(str5.match(‘,‘)); // [",", index: 3, input: "jay,33jam,2jane,19jj"] 48 console.log(str5.match(/\d/gi)); // ["3", "3", "2", "1", "9"] 49 console.log(‘‘); 50 51 // replace(regexp|substr,replacement) 52 // 字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。 53 // 返回值:一个新的字符串 54 var str6 = ‘jay,33jam,2jane,19jj‘; 55 console.log(‘======replace======‘); 56 console.log(str6.replace(‘33‘, 66)); // jay,66jam,2jane,19jj 57 console.log(str6.replace(/,/g, ‘#‘)); // jay#33jam#2jane#19jj 58 console.log(‘‘); 59 60 // search(regexp) 61 // 检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。 62 // 返回值:stringObject 中第一个与 regexp 相匹配的子串的起始位置。 63 var str7 = ‘jay,33jam,2jane,19jj‘; 64 console.log(‘======search======‘); 65 console.log(str7.search(‘33‘)); // 4 66 console.log(str7.search(‘xxx‘)); // -1 67 console.log(str7.search(/jj/)); // 18 68 console.log(‘‘); 69 70 // charAt(index) 71 // 返回指定位置的字符。 72 var str8 = ‘jay,33jam,2jane,19jj‘; 73 console.log(‘======charAt======‘); 74 console.log(str8.charAt(7)); // a 75 console.log(‘‘); 76 77 // concat(stringX,stringX,...,stringX) 78 // 连接两个或多个字符串。 79 var str9 = ‘jay,33jam,2jane,19jj‘; 80 console.log(‘======concat======‘); 81 console.log(str9.concat(‘,haha‘)); // jay,33jam,2jane,19jj,haha 82 console.log(‘‘); 83 84 // indexOf(searchvalue,fromindex) 85 // 返回某个指定的字符串值在字符串中首次出现的位置。如果未找到返回-1 86 var str10 = ‘jay,33jam,2jane,19jj‘; 87 console.log(‘======indexOf======‘); 88 console.log(str10.indexOf(‘2‘)); // 10 89 console.log(str10.indexOf(‘*‘)); // -1 90 console.log(str10.indexOf(‘2‘, 9)); // 10 91 console.log(‘‘); 92 93 // lastIndexOf(searchvalue,fromindex) 94 // 返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。如果未找到返回-1 95 var str11 = ‘jay,33jam,2jane,19jj‘; 96 console.log(‘======lastIndexOf======‘); 97 console.log(str11.lastIndexOf(‘2‘)); // 10 98 console.log(str11.lastIndexOf(‘9‘)); // 17 99 console.log(str11.lastIndexOf(‘2‘, 15)); // 10 100 console.log(‘‘); 101 102 // 数组方法 103 // slice(start,end) 104 // 从已有的数组中返回选定的元素。 105 // 返回值:返回一个新的数组 106 var arr1 = [‘George‘, ‘John‘, ‘Thomas‘, ‘James‘, ‘Adrew‘, ‘Martin‘]; 107 console.log(‘======slice======‘); 108 console.log(arr1.slice(1)); // ["John", "Thomas", "James", "Adrew", "Martin"] 109 console.log(arr1.slice(2, 5)); // ["Thomas", "James", "Adrew"] 110 console.log(‘‘); 111 112 // join(separator) 113 // 把数组中的所有元素放入一个字符串。 114 // 返回值:返回一个字符串 115 var arr2 = [‘George‘, ‘John‘, ‘Thomas‘, ‘James‘, ‘Adrew‘, ‘Martin‘]; 116 console.log(‘======join======‘); 117 console.log(arr1.join(‘@‘)); // [email protected]@[email protected]@[email protected] 118 console.log(‘‘); 119 120 // splice(index,howmany,item1,.....,itemX) 121 // 向/从数组中添加/删除项目,然后返回被删除的项目。 122 // 返回值:包含被删除项目的新数组,如果有的话。 123 var arr3 = [‘George‘, ‘John‘, ‘Thomas‘, ‘James‘, ‘Adrew‘, ‘Martin‘]; 124 console.log(‘======splice======‘); 125 arr3.splice(0, 0, ‘haha‘); // 添加 126 console.log(arr3); // ["haha", "George", "John", "Thomas", "James", "Adrew", "Martin"] 127 arr3.splice(2, 1, ‘Tom‘); // 替换 128 console.log(arr3); // ["haha", "George", "Tom", "Thomas", "James", "Adrew", "Martin"] 129 arr3.splice(3, 1); // 删除 130 console.log(arr3); // ["haha", "George", "Tom", "James", "Adrew", "Martin"] 131 console.log(‘‘); 132 133 // shift() 134 // 把数组的第一个元素从其中删除,并返回第一个元素的值。 135 var arr4 = [‘George‘, ‘John‘, ‘Thomas‘, ‘James‘, ‘Adrew‘, ‘Martin‘]; 136 console.log(‘======shift======‘); 137 console.log(arr4.shift()); // George 138 console.log(‘‘); 139 140 // unshift() 141 // 方法可向数组的开头添加一个或更多元素,并返回新的长度。 142 var arr5 = [‘George‘, ‘John‘, ‘Thomas‘, ‘James‘, ‘Adrew‘, ‘Martin‘]; 143 console.log(‘======unshift======‘); 144 console.log(arr5.unshift(‘888‘)); // 7 145 console.log(‘‘); 146 147 // pop() 148 // 方法用于删除并返回数组的最后一个元素。 149 var arr6 = [‘George‘, ‘John‘, ‘Thomas‘, ‘James‘, ‘Adrew‘, ‘Martin‘]; 150 console.log(‘======pop======‘); 151 console.log(arr4.pop(‘‘)); // Martin 152 console.log(‘‘); 153 154 // push() 155 // 方法可向数组的末尾添加一个或多个元素,并返回新的长度。 156 var arr7 = [‘George‘, ‘John‘, ‘Thomas‘, ‘James‘, ‘Adrew‘, ‘Martin‘]; 157 console.log(‘======push======‘); 158 console.log(arr7.push(‘222‘)); // 7 159 console.log(‘‘); 160 161 // reverse() 162 // 方法用于颠倒数组中元素的顺序。 163 var arr8 = [‘George‘, ‘John‘, ‘Thomas‘, ‘James‘, ‘Adrew‘, ‘Martin‘]; 164 console.log(‘======reverse======‘); 165 console.log(arr8.reverse()); // ["Martin", "Adrew", "James", "Thomas", "John", "George"] 166 console.log(‘‘); 167 168 // sort(sortby) 169 // 方法用于对数组的元素进行排序。参数为函数 170 // 返回值:对数组的引用 171 // 比较函数参数说明: 172 //若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。 173 //若 a 等于 b,则返回 0。 174 //若 a 大于 b,则返回一个大于 0 的值。 175 var arr9 = [1, 22, 68, 33, 79, 57, 61, 37, 64, 99, 6]; 176 console.log(‘======sort======‘); 177 // 从小到大排序 178 arr9.sort(function(n1, n2) { 179 return n1 - n2; 180 }); 181 console.log(arr9); 182 console.log(‘‘); 183 184 // concat(arrayX,arrayX,......,arrayX) 185 // 方法用于连接两个或多个数组。 186 var arr10 = [1,2,3]; 187 console.log(‘======concat======‘); 188 console.log(arr10.concat(4,5)); 189 console.log(arr10.concat([‘a‘,‘b‘,‘c‘]));
时间: 2024-12-22 04:54:35