JavaScript字串物件 之 根據字元返回位置、根據位置返回字元、字串操作方法
一、根據字元返回位置
字串所有方法都不會修改字串本身(字串是不可變的),操作完成會返回一個新的字串。
方法名 | 說明 |
indexOf('要查詢的字元',開始的位置) | 返回指定內容在原字串中的位置,如果找不到就返回-1,開始的位置是index索引號 |
lastIndexOf() | 從後往前找,只找第一個匹配的 |
var str = '改革春風吹滿地,春天來了';
console.log(str.indexOf('春')); //3
console.log(str.indexOf('春',3)); //8
案例:返回字串位置
查詢字串“abcoefoxyozzopp”中所有o出現的位置以及次數
- 核心演算法:先查詢第一個o出現的位置
- 只要indexOf返回的結果不是-1,就繼續往後查詢
- 後面的查詢利用第二個引數,當前索引加1,從而繼續查詢
var str = "abcoefoxyozzopp";
var index = str.indexOf('o');
var num = 0;
while (index !== -1) {
consloe.log(index);
num++;
index = str.indexOf('o',index + 1);
}
console.log('o出現的次數是' + num);
二、根據位置返回字元
方法名 | 說明 | 使用 |
charAt(index) | 返回指定位置的字元(index 字串的索引號) | str.charAt(0) |
charCodeAt(index) | 獲取指定位置處字元的ASCII碼(index索引號) | str.charCodeAt(0) |
str[index] | 獲取指定位置處字元 | HTML5,IE8+支援和charAt()等效 |
var str = 'andy';
console.log(str.charAt(3)); //y
console.log(str.charCodeAt(0)); //97
console.log(str[0]); //a
案例:返回字元位置
判斷一個字串“abcoefoxyozzopp”中出現次數最多的字元,並統計其次數。
var str = 'abcoefoxyozzopp';
var o = {};
for ( var i = 0; i <= str.length; i++) {
if (o[chars]) {
o[chars]++;
}else {
o[chars] = 1;
}
}
console.log(o);
var max = 0;
var ch = '';
for (var k in o) {
if(o[k] > max) {
max = o[k];
ch = k;
}
}
console.log(max);
console.log('最多的字元是'+ch);
三、字串操作方法
方法名 | 說明 |
concat(str1,str2,str3...) | concat()方法用於連線兩個或多個字串。拼接字串,等效於+,+常用 |
substr(start,length) | 從start位置開始(索引號),length取的個數 |
slice(start,end) | 從start位置開始,擷取到end位置,end取不到 |
substring(start,end) | 從start位置開始,擷取到end位置,end取不到,基本和slice相同,但是不接受負值 |
replace('被替換的字元','替換為的字元') | 只會替換第一個字元 |
split('分隔符') | 將字元按分隔符劃分,轉換為陣列 |
var str = 'andy';
console.log(str.concat('red'));
var str1 = '改革春風吹滿地';
console.log(str1.substr(2,2)); //春風
//1.替換字元 replace('被替換的字元','替換為的字元') 只會替換第一個字元
var str = 'andyandy';
console.log(str.replace('a','b')); //bndyandy
//將字串‘abcoefoxyozzopp’中所有的o替換為*
var str1 = 'abcoefoxyozzopp';
while (str1.indexOf('o') != -1) {
str1 = str1.replace('o','*');
}
console.log(str1); //abc*ef*xy*zz*pp
//2.將字元轉換為陣列 split('分隔符')
var str2 = 'red,pink,blue';
console.log(str2.split(',')); //["red","pink","blue"]
var str2 = 'red&pink&blue';
console.log(str2.split('&')); //["red","pink","blue"]
相關文章
- JavaScript獲取字串指定索引位置字元JavaScript字串索引字元
- 根據IP定位地理位置
- java 之 給定固定長度根據字元長分割文件Java字元
- Windows 根據埠號,找出檔案安裝位置Windows
- 根據屬性字串獲取屬性值字串
- JavaScript 根據物件鍵值進行排序JavaScript物件排序
- 百度地圖:根據位置獲取座標地圖
- js根據ip地址獲取城市地理位置JS
- element-plus table部分列根據介面返回key展示
- JS字串學習之計算給定字元的全部出現位置JS字串字元
- JavaScript字串指定位置插入新字串JavaScript字串
- 計算返回單、雙位元組字元混合字串長度字元字串
- PHP字串學習之如何返回漢字或混合字元的長度PHP字串字元
- php 根據給定字串時間獲取時區PHP字串
- 根據介面返回的二進位制流匯出檔案
- 根據關鍵詞取商品列表API返回值說明API
- JavaScript 根據type篩選inputJavaScript
- sqlserver根據雜湊演算法生成類似uuid字串SQLServer演算法UI字串
- 拼多多根據關鍵詞取商品列表 API 返回值說API
- 拼多多根據ID取商品詳情 API 返回值說明API
- Java根據前端返回的欄位名進行查詢資料Java前端
- JavaScript 比較相同的字元返回falseJavaScript字元False
- uniapp根據導航欄的標題定位到相應錨點位置APP
- C#根據雜湊演算法生成類似uuid字串C#演算法UI字串
- response返回字元床字元
- JavaScript 刪除字串重複字元JavaScript字串字元
- 根據提示操作
- js 根據傳入數字,返回千、萬、百萬、千萬、億等單位JS
- 蝦皮shopee根據ID取商品詳情 API 返回值說明API
- 根據給定的字串,修改一個多層巢狀物件對應的屬性值字串巢狀物件
- Java根據前端返回的欄位名進行查詢資料的方法Java前端
- JavaScript replace()替換字串中指定字元JavaScript字串字元
- JavaScript 刪除字串中所有指定字元JavaScript字串字元
- JavaScript刪除字串中所有指定字元JavaScript字串字元
- JavaScript刪除字串中的指定字元JavaScript字串字元
- JavaScript刪除字串中重複字元JavaScript字串字元
- Java根據地理位置獲取經緯度(呼叫百度地圖API)Java地圖API
- js,javascript 根據 xpath 路勁定位節點JSJavaScript