JavaScript字符串与数组方法整理
字符串(String)的方法:
代码后面的都是返回值
var str = "atusdgafsvg"; var str1 = "123456789"; var str0 = "sdasd tuyt weq fhf sw ss f g g"; var str5 = "Wdfdf T SDFDFdfdf"; //方法: //常用: //1. charAt() 返回指定索引处的字符 console.log(str.charAt(4)); //d //2. charCodeAt() 返回指定索引处的unicode字符 console.log(str.charCodeAt(4)); //100 console.log(str.charCodeAt(1)); //116 //3. indexOf 判断一个字符第一次出现在某个字符串的索引,如果包含返回它的索引,如果不包含返回-1 console.log(str.indexOf("s")); //3 console.log(str.indexOf("i")); //-1 //4. lastIndexOf 判断一个字符最后一次出现在某个字符串的索引,如果包含返回它的索引,如果不包含返回-1 console.log(str.lastIndexOf("s")); //8 console.log(str.lastIndexOf("q")); //-1 //5. concat 拼接2个字符串,返回一个新字符串,对原有字符串没有任何改变 var str2 = str.concat(str1); console.log(str2); //atusdgafsvg123456789 //6. substr(n,m) 从索引n开始,截取m个字符,将截取的字符返回,对原字符串没有任何改变,包括m,n可以是负值,-1从字符串最后一位开始计算 console.log(str.substr(1,5)); //tusdg console.log(str.substr(-2)); //vg //7. substring(n,m) 从索引n开始,截取到索引m,不包括m.将截取的字符返回,对原字符串没有任何改变,不接受负值 console.log(str.substring(3,4)); //s console.log(str.substring(6)); //afsvg //8. slice(n,m) 从索引n开始,截取到索引m,不包括m.将截取的字符返回,对原字符串没有任何改变,n可以是负值 console.log(str.substring(-7,4)); //atus console.log(str.substring(9)); //vg //9. split 用指定字符分割字符串,返回一个数组.对原字符串没有任何改变 document.write(str0.split("",3) + "<br />"); //atus document.write(str0.split(" ")); //10. replace('a',1); 替换指定字符,返回替换后新的字符串,对原有字符串有改变。(第一个参数可以是正则表达式) 只能替换一次 ,配合正则模 式修饰符g使用 console.log(str.replace("s",4)); //atu4dgafsvg console.log(str.replace("d","%")); //atus%gafsvg //11. match() 可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。把找到的字符放在数组里,返回一个数组 console.log(str.match("atu")); //[atu] console.log(str.match("atu000")); //null //12. search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,没有就返回-1 console.log(str.search("fsvg")); //7 console.log(str.search("atu")); //0 console.log(str.search("atu000")); //-1 //不常用: //1. fixed() 方法用于把字符串显示为打字机字体 document.write("<br />"); document.write(str.fixed()); //atusdgafsvg //2. fontcolor() 方法用于按照指定的颜色来显示字符串 document.write("<br />"); document.write(str.fontcolor("Red")); //atusdgafsvg 红色 //3. fontsize() 方法用于按照指定的尺寸来显示字符串 document.write("<br />"); document.write(str.fontsize(10)); //atusdgafsvg //4. fromCharCode() 可接受一个指定的 Unicode 值,然后返回一个字符串 document.write("<br />"); document.write(String.fromCharCode(72,69,76,76,79)); //HELLO document.write("<br />"); document.write(String.fromCharCode(65,66,67)); //ABC //5. italics() 方法用于把字符串显示为斜体 document.write("<br />"); document.write(str.italics()); //atusdgafsvg 斜体 //6. lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索,区分大小写,如果没有找到,就返 回-1 document.write("<br />"); document.write(str.lastIndexOf("dga") + "<br />"); //4 document.write(str.lastIndexOf("Dga") + "<br />"); //-1 document.write(str.lastIndexOf("dGa")); //-1 //7. link() 方法用于把字符串显示为超链接 document.write("<br />"); document.write(str.link("atusdgafsvg")); //atusdgafsvg 有下划线 //8. toLocaleLowerCase()和toLowerCase() 将字符串转换为小写,与 toLowerCase() 不同的是,toLocaleLowerCase() 方法按照本地方式把字符串转换为小写。只有几种语言(如土耳其语)具有地方特有的大小写映射,所有该方法的返回值通常与 toLowerCase() 一样 document.write("<br />"); document.write(str5.toLowerCase()); //wdfdf t sdfdfdfdf document.write("<br />"); document.write(str5.toLocaleLowerCase()); //wdfdf t sdfdfdfdf //9. toLocaleUpperCase()和toUpperCase() 将字符串转换为大写,与 toUpperCase() 不同的 是,toLocaleUpperCase() 方法按照本地方式把字符串转换为大写。只有几种语言(如土耳其语)具有地方特有的大小写映射,所有该方法的返回值通常与 toUpperCase() 一样 document.write("<br />"); document.write(str5.toUpperCase()); //WDFDF T SDFDFDFDF document.write("<br />"); document.write(str5.toLocaleUpperCase()); //WDFDF T SDFDFDFDF
数组(Array)的方法:
代码后面的都是结果
var arr = [1,2,3,4]; var arr1 = ["mercy","devil","hita"]; // 方法: // 1. 不改变原数组: //1.1 concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。 var arr3 = []; document.write(arr3.concat(arr,arr1)); //1,2,3,4,mercy,devil,hita //1.2 shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值 document.write("<br />"); document.write(arr.shift()); //1 //1.3 slice(n,[m]) 方法可从已有的数组中返回选定的元素,m为可选,从n开始到m结束,不包括m document.write("<br />"); document.write(arr.slice(1,3)); //3,4 //1.4 sort() 方法用于对数组的元素进行排序,有一定的局限性,只按照第一个来排序 document.write("<br />"); var arr5 = [5,3,8,9,1,7]; document.write(arr5.sort()); //1,3,5,7,8,9 document.write("<br />"); var arr6 = [5,3,8,9,10,7,1]; document.write(arr6.sort()); //1,10,3,5,7,8,9 //1.5 // 2. 改变原数组: //2.1 join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的,分隔符,不写的话,默认为逗号分隔 document.write("<br />"); var arr4 = []; arr4[0] = 1; arr4[1] = 2; arr4[2] = 3; arr4[3] = 4; arr4[4] = 5; document.write(arr4.join("^")); //1^2^3^4^5 //2.2 pop() 方法用于删除并返回数组的最后一个元素 document.write("<br />"); document.write(arr1.pop()); //hita //2.3 push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度 document.write("<br />"); document.write(arr4.push("9")); //6 //2.4 reverse() 方法用于颠倒数组中元素的顺序 document.write("<br />"); document.write(arr.reverse()); //4,3,2,1 //2.5 splice(n,m,i) 方法向/从数组中添加/删除项目,然后返回被删除的项目,n和m都是必填的,n是从第几位开始删除,m是删除几位,i是 添加的值,可以有多个i document.write("<br />"); document.write(arr4); //1,2,3,4,5,9 document.write("<br />"); document.write(arr4.splice(2,2)); //3,4 document.write("<br />"); document.write(arr4); //1,2,5,9 document.write("<br />"); document.write(arr4.splice(2,1,8)); //5 document.write("<br />"); document.write(arr4); //1,2,8,9 //2.6 unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度 document.write("<br />"); document.write(arr); //4,3,2 document.write("<br />"); document.write(arr.unshift(5)); //4 document.write("<br />"); document.write(arr); //5,4,3,2