在JavaScript中訪問字符串的子串
使用substring()或slice()方法(NN4+, IE4+),下面說明它們的具體用法。
substring()的原型為:
string.substring(from, to)
第一個(gè)參數(shù)from指定了子字符串在原字符串中的起始位置(基于0的索引);第二個(gè)參數(shù)to是可選的,它指定了子字符串在原字符串的結(jié)束位置(基于0的索引),一般情況下,它應(yīng)比from大,如果它被省略,那么子字符串將一直到原字符串的結(jié)尾處。
如果參數(shù)from不小心比參數(shù)to大了會(huì)怎樣?JavaScript會(huì)自動(dòng)調(diào)解子字符串的起止位置,也就是說,substring()總是從兩個(gè)參數(shù)中較小的那個(gè)開始,到較大的那個(gè)結(jié)束。不過要注意,它包含起始位置的那個(gè)字符,但不包含結(jié)束位置的那個(gè)字符。
var fullString = "Every dog has his day."; var section = fullString.substring(0, 4); // section is "Ever". section = fullString.substring(4, 0); // section is also "Ever". section = fullString.substring(1, 1); // section is an empty string. section = fullString.substring(-2, 4); // section is "Ever", same as fullString.substring(0, 4); slice()的原型為: string.slice(start, end)
參數(shù)start表示子串的起始位置,如果為負(fù)數(shù),那么可以理解為倒數(shù)第幾個(gè)開始,例如-3表示從倒數(shù)第三個(gè)開始;參數(shù)end表示結(jié)束位置,與start一樣,它也可以為負(fù)數(shù),其含義也表示到倒數(shù)第幾個(gè)結(jié)束。slice()的參數(shù)可以為負(fù)數(shù),所以要比substring()更加靈活,但沒那么寬容了,如果start比end要大,它將返回一個(gè)空字符串(示例略)。
還有一個(gè)方法是substr(),其原型為:
string.substr(start, length)
從原型可以看出它的參數(shù)的含義,start表示起始位置,length則表示子字符串的長度。JavaScript標(biāo)準(zhǔn)不提倡使用該方法。
- JavaScript自定義函數(shù)實(shí)現(xiàn)查找兩個(gè)字符串最長公共子串的方法
- js判斷一個(gè)字符串是否包含一個(gè)子串的方法
- js判斷出兩個(gè)字符串最大子串的函數(shù)實(shí)現(xiàn)方法
- JS使用正則表達(dá)式找出最長連續(xù)子串長度
- JavaScript檢查子字符串是否在字符串中的方法
- JavaScript判斷一個(gè)字符串是否包含指定子字符串的方法
- javascript查找字符串中出現(xiàn)最多的字符和次數(shù)的小例子
- js中通過split函數(shù)分割字符串成數(shù)組小例子
- JavaScript計(jì)算字符串中每個(gè)字符出現(xiàn)次數(shù)的小例子
- javascript下搜索子字符串的的實(shí)現(xiàn)代碼(腳本之家修正版)
- JavaScript實(shí)現(xiàn)求最大公共子串的方法
相關(guān)文章
JavaScript基礎(chǔ)語法與數(shù)據(jù)類型介紹
這篇文章介紹了JavaScript基礎(chǔ)語法與數(shù)據(jù)類型,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-02-02JavaScript對(duì)象內(nèi)置對(duì)象,值類型和引用類型講解
本文講述了JavaScript的一些對(duì)象,值的類型和引用類型的講解,詳細(xì)的使用圖文進(jìn)行說明歸納和整理2021-06-06想學(xué)習(xí)javascript JS和jQuery哪個(gè)重要 先學(xué)哪個(gè)
在一些技術(shù)論壇與qq群經(jīng)??吹接羞@樣類似的提問,當(dāng)然提出這樣問題的通常都是新手為了解決大家的疑惑,同時(shí)幫助新手程序員能更快掌握學(xué)習(xí)的方向,不致于弄錯(cuò)重點(diǎn)2016-12-12