クラスを取得:
1) 動的メソッド:
charAt: 文字列内の指定された位置にある文字を取得します。 (パラメータ:one、取得する文字位置を指定)
1、負の数値は受け入れられません。負の数値の場合は、空の文字列が返されます。
2、パラメータが指定されていない場合、デフォルトでは位置 0 の文字を取得します。
3、パラメータを 1 つだけ受け取ります。
charCodeAt: 文字列内の指定された位置にある文字の Unicode エンコードを取得します (パラメータ: 1、文字の位置を指定して文字エンコードを取得します)
1. すべての文字には固有の文字エンコーディングがあります。
2、パラメータを 1 つだけ受け取ります。
一般的に使用される:
番号: 48 ~ 57
アンダースコア: 95
スペース: 32
タブ文字: 9
小文字: 97 ~ 122
大文字: 65 ~ 90
2) 静的メソッド:
fromCharCode: 指定された文字コードに従って、対応する文字を返します。 (パラメータ: 任意の数値)
1、複数のパラメータを受け取ることができます。
2. 書き込み方法は固定(静的メソッド): String.fromCharCode(); //文字エンコーディング有効範囲: 0 ~ 65535 String は文字列オブジェクトです
var str = '我是字符串'; alert( str.charAt( ) ); //'' 如果本身长度只有,却找str.charAt() 找不到也是空字符串'',~str.length-是合法范围。 alert( str.charAt( ) ); //'我' 默认不写是,找到第一个字符 alert( str.charAt() ); // '字' alert( ''.charAt( ) ); // alert( ''.charAt(,) ); // alert( str.charCodeAt( ) );// unicode编码 alert( ''.charCodeAt() ); // alert(String.fromCharCode( ,)); //'字味' 根据编码转换成字符(静态方法)多个字符用 , 隔开
クラスを検索:
indexOf: 文字列内で指定された部分文字列が最初に出現する箇所を検索します。 (最初のパラメータは検索する部分文字列を指定し、2 番目のパラメータは検索を開始する位置を指定します。)
1、デフォルトでは位置 0 から開始して前から後ろに検索します。
2. 見つかった場合は、最初に見つかった位置を返します。見つからなかった場合は、-1 を返します。
3、2 番目のパラメータが負の場合、デフォルトでは 0 として扱われます
lastIndexOf: 文字列内で指定された部分文字列が最後に出現する箇所を検索します。 (最初のパラメータは検索する部分文字列を指定し、2 番目のパラメータは検索を開始する位置を指定します。)
1、デフォルトでは長さ - 1 の位置から開始して後ろから前に検索します。
2. 見つかった場合は、最初に見つかった位置を返します。見つからなかった場合は、-1 を返します。
var str = 'www.baidu.com/'; alert(str.indexOf('bai')); // 从左往右找找到一个就返回不会再往右找了 alert(str.indexOf('m',)) // 从第位开始向右找 alert(str.indexOf('X')) //- 不存在的话结果是 - 表示没找到 alert(str.lastIndexOf('ww')); //
インターセプトクラス:
substring: 指定された範囲内の部分文字列を抽出します。 (最初のパラメータは抽出する開始位置を指定し、2 番目のパラメータは抽出する終了位置を指定します。)
1、抽出範囲には開始位置は含まれますが、終了位置は含まれません。
2、2 番目のパラメータは省略できます。これは、文字列
の開始位置から末尾までを抽出することを意味します。
3. 抽出する前に、まず 2 つのパラメータの大きさを比較し、小さい値から大きい値の順にパラメータの位置を調整して抽出します。
4、すべての不正なパラメータは自動的に 0 に変換されます。
5、パラメータが指定されていない場合、デフォルトで文字列全体が直接返されます。
slice: 指定された範囲の部分文字列を抽出します。 (最初のパラメータは抽出する開始位置を指定し、2 番目のパラメータは抽出する終了位置を指定します。)
1、抽出範囲には開始位置は含まれますが、終了位置は含まれません。
2、2 番目のパラメータは省略できます。これは、文字列
の開始位置から末尾までを抽出することを意味します。
3、2 つのパラメータの位置を比較したり、位置を調整したりすることはありません
4、パラメータは正の数または負の数にすることができ、その他の不正なパラメータはすべて 0 に変換されます。
5、負の数値は文字列の後ろから前までの文字位置を示し、最後の文字の位置は -1 です。
var str = '我是字符串'; alert(str.substring()); //'我是字符串' alert(str.substring(-,)); //'我' alert(str.substring()); //字符串 alert(str.substring(,)); //'我是' 与str.substring(,)是一样的。可以检测两个数,大的往后仍,小的往前仍。负数当成来处理。 alert(str.slice(,)); //空白 找不到,不交换位置 alert(str.slice(-)); //'符串' 负数就是从后面倒着往前数
比較タイプ:
alert('I'>'you'); //true 文字列比較では、最初の文字に対応する Unicode 値のみが比較され、後続の文字は比較されません。
その他のカテゴリ:
alert(str.length); //文字列の長さを取得します
split() //文字列を配列に切り出す
パラメータ: a は文字列の分割に使用される区切り文字を指定します。
1. 区切り文字が指定されていない場合は分割されず、配列に直接格納されます。
2. セパレータを基に、セパレータの左側と右側の値を配列に格納します。
3. 区切り文字自体は配列に保存されません。
4. 区切り文字は文字列内に存在する部分文字列のみです。
5. 分割のビューでは、2 つの文字を空の文字列で接続する必要があります。
6. 空の文字列を分割するために空の文字列を使用すると、空の配列が得られます。
var str = ''; alert( typeof str ); //string alert( typeof str.split() ); //object alert( str.split().length ); //[''] alert( str.split('') ); //['',''] alert( str.split('a') ); //[''] alert( str.split('') ); //['',''] alert( str.split('').length ); //['','','',''] alert( str.split('') ); //['','','',''] //'' 由五个 '' 加 四个字符组成 alert( str.split('') );//['',''] alert( str.split('') ); //['',''] alert( ''.split(' ').length ); //[''] alert( ''.split('').length ); //[] //特例,只有这种情况下 split 才会返回空数组。
trim() : 去除字符串首尾的所有空格。(字符串中间的空格会保留)。
html5的新方法,低版本浏览器不支持。
toUpperCase() : 把字符串全部转换成大写。(没有参数)
toLowerCase() : 把字符串全部转换成小写。(没有参数)
最后,所有的字符串方法,都不会修改字符串本身。
javascript字符串连接类
在我们写前端的js时,经常会出现将很多的字符串通过“+”拼接起来,然后挂载的某个DOM元素上。然而关于使用“+”来拼接字符串,在各浏览器下解析的效果,我就在此不做对比了,网上这类的对比很多。很多牛人都说通过使用js中的Array的join方法来拼接字符串效果很不错。为此在项目中写一个js类,用来统一处理字符串的拼接。
代码
//自定义的一个字符串连接类,用于拼接字符串,比"+"要提升性能function StringBuffer() { this._strs = new Array(); }StringBuffer.prototype.append = function(str) { this._strs.push(str); };StringBuffer.prototype.arrayToString = function() { return this._strs.join(""); };
而我们在使用该类时,可以直接通过如下方法:
var strBuff=new StringBuffer();strBuff.append("hello,");strBuff.append("Welcome to Javascript!");alert(strBuff.arrayToString());