javascript---关于字符串和数组的方法
Posted 游鱼与渔
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript---关于字符串和数组的方法相关的知识,希望对你有一定的参考价值。
在学习javascript过程中,遇到过很多关于数组和字符串的一些操作。之前也总结了不少方法,可是一遇到自己用的时候,就忘了。不是忘了方法叫什么名,就是忘了方法的参数有什么,返回的是什么?
现在就再次总结一下:
首先是字符串的方法:
1.字符方法:
charAt()---功能:返回指定位置的字符;语法:string.charAt(index) index超出范围返回空字符串
1 var str = ‘Hello‘; 2 var n = str.charAt(1); 3 console.log(n);//返回字符 e
charCodeAt( )---功能:返回指定位置的字符的Unicode编码;语法:string.charCodeAt(index) index超出范围返回NaN
1 var str1 = ‘Hello‘; 2 var n1 = str1.charCodeAt(1); 3 console.log(n1);//返回 101
fromCharCode( )---功能:接受指定的Unicode值,返回对应的字符串;语法:String.fromCharCode();参数:n1,n2,...nx
1 var n2 = String.fromCharCode(72,69,76,76,79); 2 console.log(n2);//返回 HELLO
2.位置方法:
indexOf()---功能:返回某个指定的字符串首次出现的索引位置;语法:string.indexOf(searchvalue,start) searchvalue是必需值,start可选,规定开始索引的位置,默认是从0开始;返回值:number 查找的字符串最先出现的位置,如果没有找到匹配字符串则返回 -1。 使用度:*****
1 var str3="Hello world, welcome to the universe."; 2 var n3=str3.indexOf("e",5); 3 console.log(n3);//返回14
lastIndexOf()---功能:可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。语法:string.indexOf(searchvalue,start) searchvalue是必需值,start可选,规定开始索引的位置;返回值:number 查找的字符串最后出现的位置,如果没有找到匹配字符串则返回 -1。
1 var str4="Hello planet earth, you are a great planet."; 2 var n4=str4.lastIndexOf("planet"); 3 console.log(n4);//返回36
3.匹配方法:
match()----英文:匹配 功能:在字符串内检索指定的子字符串,或找到一个或多个正则表达式的匹配。语法:string.match(regexp);返回值:Array
注意:返回值是一个数组。
1 var str5="The rain in SPAIN stays mainly in the plain"; 2 var n5=str5.match(/ain/gi); 3 console.log(n5);//返回["ain", "AIN", "ain", "ain"]
search()---功能:用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,如果没有找到任何匹配的子串,则返回-1;语法:string.search(searchvalue) searchvalue必需,查找的字符串或者正则表达式。;返回值:Number
1 var str6="Mr. Blue has a blue house"; 2 var n6 = (str6.search("blue")); 3 console.log(n6);//返回15
split()---英文:切割 功能:用于把一个字符串分割成子字符串。再组成数组。语法:string.split(separator,limit)。separator(分隔符) 可选 选定的参数用来分割字符串 limit 可选,该参数可指定返回的数组的最大长度(length)。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。返回值:Array 使用度:*************
1 //省略分割参数 2 var str7="How are you doing today?"; 3 var n7=str7.split(); 4 console.log(n7);//返回["How are you doing today?"] 数组长度为1 5 //‘‘分割所有字符,包括空格 6 var n8=str7.split(‘‘); 7 console.log(n8);//["H", "o", "w", " ", "a", "r", "e", " ", "y", "o", "u", " ", "d", "o", "i", "n", "g", " ", "t", "o", "d", "a", "y", "?"] 8 //使用limit参数 9 var n9=str7.split(‘ ‘, 3); 10 console.log(n9);//返回["How", "are", "you"] 11 //使用一个字符作为分隔符 12 var n10=str7.split(‘o‘); 13 console.log(n10);//返回["H", "w are y", "u d", "ing t", "day?"]
4.操作方法
拼接方法 concat()---功能:用于连接两个或多个字符串;语法:string.concat(string1, string2, ..., stringX) string1, string2, ..., stringX 必需,将被连接为一个字符串的一个或多个字符串对象。返回值:String 两个或多个字符串连接后生成的新字符串。
1 var str8="Hello "; 2 var str9="world!"; 3 var str10=" Have a nice day!"; 4 var n11 = str8.concat(str9,str10); 5 console.log(n11);//返回字符串‘Hello world! Have a nice day!‘
截取方法 slice() 英文:切片 功能:提取的字符串的某个部分,并以新的字符串返回被提取的部分;语法:string.slice(start,end) start 必须. 要抽取的片断的起始下标。第一个字符位置为 0 end 可选。 紧接着要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置 。返回值:String 使用度:********
1 //提取所有字符串 2 var str11="Hello world!"; 3 var n12=str11.slice(0); 4 console.log(n12);//返回‘Hello world!‘ 5 //从字符串的第3个位置提取字符串 6 var n13=str11.slice(3); 7 console.log(n13);//返回‘lo world!‘ 8 //从字符串的第3个位置到第8个位置提取字符串 9 var n14=str11.slice(3,8); 10 console.log(n14);//返回‘lo wo‘ 11 //提取最后一个字符 12 var n15=str11.slice(-1); 13 console.log(n15);//返回‘!‘
substring() 英文:子字符串 功能:提取字符串中介于两个指定下标之间的字符,不包括结束处的下标;语法:string.substring(from,to)from 必需,一个非负的整数.to可选。一个非负的整数,如果省略该参数,那么返回的子串会一直到字符串的结尾。返回值:String 使用度:*******
1 var str12="Hello world!"; 2 document.write(str12.substring(3)+"<br>");//返回‘lo world!‘ 3 document.write(str12.substring(3,7));//返回‘lo w‘
substr()---功能:在字符串中抽取从下标开始的指定长度的字符;语法:string.substr(start,length) star 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1指字符串中最后一个字符,-2指倒数第二个字符,以此类推。length可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字符串。返回值:String
1 var str13="Hello world!"; 2 var n16=str13.substr(2); 3 console.log(n16);//‘llo world!‘
总结完字符串的方法,接下来总结数组的方法:
以上是关于javascript---关于字符串和数组的方法的主要内容,如果未能解决你的问题,请参考以下文章