String操作方法底層實現!!!

2021-09-11 15:33:02 字數 3243 閱讀 7886

以下**純屬個人寫著玩。為了加深理解和熟悉字串提供的方法的思路。但是我發現我寫完之後還是忘了。沒啥鳥用。分享給大家指點。

大家說如果面試的話,讓面試者寫乙個字串底層方法實現思路。是否能快速寫出來。

/*

* charat()方法

* 功能 : 返回指定位置的字元

* 引數 : 傳遞乙個下標

* 官方使用

* var str = "abcdefg";

* str.charat(2); //c

* str.charat("cccc"); //輸入其他字元都預設返回下標為0的字元 輸出a

* str.charat(-1); //傳遞負值返回空字串

*/string.prototype.yccharat = function

()複製**

/*

* concat()方法

* 功能 : 用於連線兩個字串

* 引數 : 傳遞乙個字串

* 官方使用

* var str = "abcdefg";

* str.concat(123); //"abcdefg123"

* str.concat([1,2,3]); //"abcdefg1,2,3"

* str.concat(); //"abcdefg[object object]"

*/string.prototype.ycconcat = function

()複製**

/*

* slice() 方法

* 功能 : 擷取字串。

* 引數 : 第乙個引數是子字串的開始位置,第二個引數是子字串的結束位置(不含該位置)

* 注意 :

* 1:第乙個引數不能大於第二個引數的值 否則返回空

* 2:如果引數是負值。當引數是負數時候 字串長度會預設加上負數

* 官方使用

* var str = "abcdefg";

* str.slice(1); //"bcdefg"

* str.slice(1,4); //"bcd"

* str.slice(1,-4); //結束位置就相當於 字串長度7+-4 = 3 === slice(1,3) = bc

* str.slice(-3,-4); //""

*/string.prototype.ycslice = function

() }

return _str;

}複製**

/*

* substring() 方法

* 功能 : 擷取字串。如果引數是負值。當引數是負數或者時候 字串長度會預設加上負數

* 引數 : 第乙個引數是子字串的開始位置,第二個引數是子字串的結束位置(不含該位置)

* 注意 :

* 1:第乙個引數不能大於第二個引數的值 否則返回空

* 2:當傳遞不是數字則預設轉換為0

* 官方使用

* var str = "abcdefg";

* str.substring(1); //"bcdefg"

* str.substring(1,4); //"bcd"

* str.substring(1,-4); //結束位置就相當於 字串長度substring(1,0) = b

* str.substring(-3,-4); //""

*/string.prototype.ycsubstring = function

() }

return _str;

}複製**

/*

* substr() 方法

* 功能 : 擷取字串。如果引數是負值。當引數是負數或者時候 字串長度會預設加上負數

* 引數 : 第乙個引數是子字串的開始位置,第二個引數是子字串的長度

* 注意 :

* 1:第乙個引數是負值。當引數是負數時候 字串長度會預設加上負數

* 2:第二個引數當傳遞不是數字則預設轉換為0

* 官方使用

* var str = "abcdefg";

* str.substr(1); //"bcdefg"

* str.substr(1,4); //"bcd"

* str.substr(1,-4); //結束位置就相當於 字串長度substring(1,0) = b

* str.substr(-3,-4); //""

*/string.prototype.ycsubstr = function

() }

return _str;

}複製**

/*

* indexof() 方法

* 功能 : 返回指定字元在當前字串第一次出現的位置。

* 引數 : 第乙個引數:匹配的字串 第二個引數 :從哪個位置開始匹配

* 官方使用

* var str = "abcdefga";

* str.indexof("a"); //"0"

* str.indexof("a",2); //"7"

* str.indexof(1); //-1

*/string.prototype.ycindexof = function

() }

}複製**

/*

* lastindexof() 方法

* 功能 : 返回當前字串最後乙個匹配的字元索引

* 引數 : 第乙個引數:匹配的字串 第二個引數 :從哪個位置開始匹配

* 官方使用

* var str = "abcdefga";

* str.lastindexof("a"); //"7"

* str.lastindexof("a",2); //"0"

* str.lastindexof(1); //-1

*/string.prototype.yclastindexof = function

() }

}複製**

String 操作方法

對字串進行操作 stringbuffer sb new stringbuffer 你好 2 sb.reverse 反轉字串,有索引反轉方法 3 sb.delete 刪除索引位置中的字串 4 sb.insert 新增索引位置中的字串 5 sb.replace 替換索引位置的字串 string的方法 c...

String的常用操作方法

在string類中提供了以下的方法操作字元與字串間的轉換關係 根據字串中提供的索引找到指定位置的字元 public charcharat int index 將字串變為字元陣列 public chartochararray 將字元陣列變為字串 將全部的字元陣列變為string型別 publicstr...

linux中斷底層硬體操作方法

linux中斷底層硬體操作方法 joee33 每一條中斷線都有乙個底層硬體操作函式集struct irq chip 大多數控制方法都是重複的 基本上只要有 中斷響應 中斷遮蔽 中斷開啟 中斷觸發型別設定等方法就可以滿足要求了。其他各種方法基本上和這些相同。這些操作方法的實現在檔案linux arch...