成语| 古诗大全| 扒知识| 扒知识繁体

当前位置:首页 > 趣味生活

js中常用字符串方法

Q1:JS常用字符串处理方法应用总结

1.indexOf()方法,从前往后查找字符串位置,大小写敏感,从0开始计数。同理,lastIndexOf() 方法从后往前,两个方法对于相同的检索条件输出的结果是一样的
例如:
复制代码 代码如下:
<script type="text/javascript">
var str="Hello World!"
document.write(str.indexOf("Hello"))//输出0
document.write(str.indexOf("World"))//输出6
document.write(str.indexOf("world"))//输出-1,因为没查到
</script> 2.length,采用“XXX.length”的形式访问,因为它是string对象的方法
复制代码 代码如下:
<script type="text/javascript">
var str="Hello World!"
document.write(str.length);//输出12
</script> 3.substr()方法,用于字符串截取,一个必选参数,一个可选参数,从0开始计数
复制代码 代码如下:
<script type="text/javascript">
var str="Hello World!"
document.write(str.substr(3));//输出lo World!,从序数为3的字符开始(包括序数为3的字符),参数只有一个时会一直输出到末尾
document.write(str.substr(3,7));//输出lo Worl,如果第一个参数是负数,就是倒着数
</script> 4.charAt()方法,用于返回指定位置的字符,从0开始计数
复制代码 代码如下:
<script type="text/javascript">
var str="Hello World!"
document.write(str.charAt(1));//输出e
</script> 5.split()方法,用于把一个字符串分割成字符串数组
复制代码 代码如下:
<script type="text/javascript">
var str="Hello World!"
document.write(str.split(" "));//输出Hello,World!
document.write(str.split(""));//输出H,e,l,l,o,W,o,r,l,d,!
document.write(str.split(" ",1));//输出Hello
"2:3:4:5".split(":")//将返回["2", "3", "4", "5"]
"|a|b|c".split("|")//将返回["", "a", "b", "c"]
var words = sentence.split(/\s+/)//使用正则表达式作为分割参数
</script>

wWw.BAZhIshi.※Com

Q2:js数组与字符串常用方法总结

最近在梳理js的基础,首先从数组和字符串开始。

string 常用方法:

1.substring(start开始位置的索引,end结束位置索引) 截取的位置不包含结束位置的字符,只写一个参数表示从开始位置截取到最后

var str=abcdefg;str.substring(1) //得到bcdefgstr.substring(1,3) //得到bc

输入负值时将负值变为0,哪个较小作为开始位置

str.substing(-1,1) =>str.substring(0,1) //a
str.substring(1,-2) =>str.substring(0,1) //a

2.slice(start开始位置索引,end结束位置索引) 基本和substring相似,区别在参数为负数。

var str=abcdefg;str.slice(1)//bcdefgstr.substring(1,3) // bc

输入负值时 值与字符串的长度相加

str.slice(-1) =>str.slice(6) //g
str.slice(1,-2) =>str.slice(1,5) //bcde
str.slice(-2,-1)=>str.slice(5,6) //f

值绝对值大于字符串的长度时变为 0

str.slice(-22) =>str.substring(0) //abcdefg

第二个参数绝对值大于字符串的长度时,返回

3.substr(start开始位置索引,end需要返回的字符个数)

var str=abcdefg;str.substr(1) //bcdefgstr.substr(1,1) //b

输入负值时 start参数与字符串的长度相加 ,end为负时参数变为0

str.substr(-1) =>str.substr(6)//gstr.substr(-2,-3) //

4.charAt(index) 方法返回指定索引位置处的字符。如果超出有效范围(0与字符串长度减一)的索引值返回空字符串.

var str=abcdefg;str.charAt(2) // c

5.index(string) 返回String对象内第一次出现子字符串位置。如果没有找到子字符串,则返回-1。

var str=abcdefga str.indexOf(a) // 0 str.indexOf(h) //-1

6.lastIndexOf(string) 倒叙查找

返回String对象内第一次出现子字符串位置。如果没有找到子字符串,则返回-1。

var str=abcdefga str.lastIndexOf(a) // 7

7.split(str) 将字符串以参数分割为数组

var str=abcadeafg str.split(a) //["", "bc", "de", "fg"]

8. toLowerCase方法返回一个字符串,该字符串中的字母被转换成小写。

9. toUpperCase方法返回一个字符串,该字符串中的所有字母都被转换为大写字母。

10.match() – 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配

11.search 方法返回与正则表达式查找内容匹配的第一个字符串的位置。

12.replace 用来查找匹配一个正则表达式的字符串,然后使用新字符串代替匹配

http://www.cnblogs.com/bijiapo/p/5451924.html

数组常用的方法

1. push 添加到最后 返回添加后的数组

2. unshift 添加到最前面 返回添加后的数组

3. shift 删除(从前面) 返回处理后的数组

4. pop 删除最后一项 返回处理后的数组

5. reverse 数组翻转 返回处理后的数组

6. join 数组转化为字符串

var arr=[1,2,3,4,5], str=arr.join(--);console.log(str); // 1--2--3--4--5 以join内的参数切割数组console.log(arr); // [1,2,3,4,5]原数组未变

7. slice(start,end) 截取数组 从start(开始) 到end(结束 不包含)

返回新数组,原数组不变

var arr=[1,2,3,4,5],new=arr.slice(2,4);console.log(new);// [3,4]console.log(arr);// [1,2,3,4,5]

8. concat 数组合并

9. splice(开始下标,个数,ele1,ele2....) 剪接数组

(1).一个参数 从参数位置截取 填写负数类似上面str slice 返回截好的数组 原数组变化

var arr=[1,2,3,4,5];console.log(arr.splice(1));// [2,3,4,5]console.log(arr);// [1]console.lgo(arr.splice(-1))// [5]

(2).二个参数 截取 (开始位置,个数) 返回截好的数组 原数组变化

var arr=[1,2,3,4,5];console.log(arr.splice(1,3)); // [2,3,4]console.log(arr)// [1,5]arr.splice(0,1) =>arr.shift()arr.splcie(arr.length-1,1) =>arr.pop()

(3).添加 原数组增加

var arr=[1,2,3,4,5];console.log(arr.splice(1,0,13)); // []console.log(arr);// [1,13,2,3,4,5]

(4).替换

var arr=[1,2,3,4,5];console.log(arr.splice(1,2,a,b)) // [2,3]console.log(arr);// [1,a,b,4,5]arr.splice(0,0,1) =>arr.unshift(1);arr.splice(arr.length,0,1) => arr.push(1)

10. arr.forEach(item,index,array){} 遍历,循环 类似jquery的each

其中的item参数是数组中的内容,index为其索引,array表示数组本身

var arr=[1,2,3,4,5];arr.forEach(function(item,index,array){})

遇到嵌套跳出循环出现问题,暂时没有解决;

11. map方法 映射 用法和forEach类似

var men=[{name:1,age:12},{name:2,age:22},{name:3,age:33}],age=men.map(function(item){return item.age;})

12. arr.sort 排序

var arr=[1,2,22,11,33,3,5,4];console.log(arr.sort()) // [1,11,2,22,3,33,4,5]

默认情况下sort方法是按ascii字母顺序排序的,而非我们认为是按数字大小排序

arr.sort(function(a,b){ return a-b})

a-b从小到大 b-a从大到小

13. 顺便写写我知道的排序方法

(1)冒泡排序 每次比较相邻的两个数,如果后一个数比前一个数小,换位置

function bSort(arr){var tmp;for(var i=0,len=arr.length-1;iarr[j+1]){//换位置tmp=arr[j+1];arr[j+1]=arr[j];arr[j]=tmp;}}}return arr;}function bSort(arr){var tmp;arr.forEach(function(item,i){arr.forEach(function(item,i){if(item>arr[i+1]){//换位置tmp = arr[i + 1];arr[i + 1] = arr[i];arr[i] = tmp;}})})return arr}

(2)快速排序 二分法,找到中间的数,取出来(新数组),原数组没,每次和此数比较,小的放到左边,大的放到右面

function fastSoft(arr){var len=arr.length;if(len<=1){ return arr}varcIndex=Math.floor(len/2),c=arr.splice(c,1),left=[],right=[];arr.forEach(function(item,i){if(item 14. 数组的去重也写下吧

(1)双层循环不是很好

var arr=[2,3,2,2,2,4,5],arr2=[];function find(arr2,ele){for(var i= 0,len=arr2.length;i (2)利用json的key值无重复

var arr=[2,3,2,2,2,4,5],json={},arr2=[];arr.forEach(function(item,i){if(!json[item]){json[item]=222;}});for(var name in json){arr2.push(Number(name));//类型发生变化了}

(3) 利用sort方法排序,去掉旁边相同项

var arr=[2,3,2,4,4,4,5],arr2=[];arr.sort();for(var i=0;i 一些常见数学方法

math.abs() 取绝对值math.ceil() 向上取整 math.floor() 向下取整math.round() 四舍五入 math.roundomfunction getRan(n,m){return Math.floor(Math.random()*(m-n)+n);}

数组和字符串的一些综合应用

1. 截取后缀名

(1) var str=1.xxx.avi;

str=str.substring(str.lastIndexOf(.)+1);

(2) var str=1.xxx.avi;

var arr=str.split(.);console.log(arr[arr.length-1]);

2.字母翻转,首字母大写

var str=wo shi yi ge demo,arr=str.split( );for(var i=0;i 3. str中字符出现次数的统计

var str=aaaandkdffsfsdfsfssq12345,json={},n= 0,sName;for(var i= 0,len=str.length;in){n=json[name];sName=name;}}console.log(出现最多的字母+sName+次数为+n);

4. 简单的url参数解析

function getData() {var search = window.location.search.substring(1);if (!search) {return;}var arr = search.split(&),arr2 = [],json = {},key,alue;for (var i = 0; i < arr.length; i++) {arr2 = arr[i].split(=);key = arr2[0];value = https://www.bazhishi.com/aldyjtapi/arr2[1];json[key] = value;}return json;}

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

wWw.BAZHiSHI.+cOM

Q3:JS常用字符串方法(推荐)

JS常用字符串方法(推荐)

var str01 = "odd open xboxone" , str02 = "hey";var str03;var num = 15; 

// 以下省略前半部分的 " str01. " (部分不是这个喔)

charAt(num) // 得到指定索引位置的单字符

charCodeAt(num) // 得到指定索引位置字符的Unicode值 (ascii为其子集)

concat(str01,str02) // 连接俩字符~

indexOf("str") // 取str第一次出现的索引

lastIndexOf("str") // 取str最后一次出现的索引

replace( "oldStr" , "newStr" ) // 找到oldStr替换为newStr

slice( start , end ) // 其对象可以是字符串or数组 , 记得其范围不包括end

substr( start , length ) // 从索引start开始取length个字符 , length不可小于0否则返回空字符串

search("str") // 在str01中搜索字符串"str" , 返回其第一个字符在str01中的索引

String.fromCharCode(uniNum,uniNum) // 参数为Unicode值 ( >=1个即可)

str01.localeCompare(str02) // 以本地特定规则比较 , 若str01>str02 = 1 反之-1 相等为0
str03 = str02.valueOf() ; // 可返回字符串对象(str02)的原始值

str03 = str01.split("str") // 将原字符串分割为一个数组对象 , 分隔符为逗号 , 参数为 空 空格 字符串

var n = num.toString() // 将Number对象=>String对象(n为字符) , 源对象没变

// 以下是基本样式类

var txt = "heyguy"

txt.link("url") // 转换为超链接 , 记得一定要加上http://

txt.big() // 可改为big/small/bold/italic/fixed/sub/sup/strike ( strike是删除线 )

txt.fontcolr("red") // name/rgb/#000000 还是老套路

txt.fontsize(num) // 只支持数字

以上就是小编为大家带来的JS常用字符串方法(推荐)全部内容了,希望大家多多支持脚本之家~

Q4:字符串型的方法函数如何在js中执行

方案只有一种:

通过eval方式把字符串转换为命令方式,执行字符串型方法函数。

示例

1234567<script>functionfunc(a){//定义一个待参数的函数alert(a);}eval(func());//调用函数不传入参数eval(func("bcd"));//调用函数,传入参数</script>

猜你喜欢

更多