JavaScript字符串与数组方法整理

时间:2023-03-09 17:00:55
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