いくつかの方法の配列と文字列概要

A.アレイ(アレイ)

1.アレイ検出:でIsArray()

Array.isArray()メソッドでECMScript5に新しいは、値が配列でないことを確認するために使用されます。

2.変換方式:のtoString()、(参加)

toString呼び出しアレイ()メソッドは、配列によって得られた各値を組み合わせて形成された文字列のカンマ区切り文字列を返します。

()メソッドを文字列に配列の値をスプライスするために異なる区切り文字を使用することができる結合を使用。join()メソッドは、文字列の区切りとして、すなわち、一つのパラメータを取ります。

VaRの色=「赤」、「青」、「緑」]。
警告(color.toString()); // 赤、青、緑
VaRの色=「赤」、「青」、「緑」]。
警告(color.join( '|')); // 赤|青|緑

3.メソッドスタック:プッシュ()ポップ()

後者は、スタックデータ構造の外に前進されます。
プッシュ()メソッドは、任意の数のパラメータを受信し、いずれかによって、アレイの末尾に追加、および修飾配列の長さを返してもよいです。
ポップ()メソッドは、配列の終わりから最後の項目を削除し、除去アイテムを交換することです。

前記リオーダリング方法:リザーブ()短いです() 

リザーブ()メソッドは、配列の順序を逆に

 

VaRの値= [1、2、3、4、5 ]。
values.reverse(); 
警告(値);  // 5,4,3,2,1

 

ソート()、デフォルトで昇順に配列エントリ方式で配置されています。ソート()メソッドは、次に、得られた文字列比較は、各配列項目をソートする方法を決定している、のtoString()メソッドを呼び出します。アレイは、各アレイであっても、並べ替え()メソッドは、文字列比較です。

 

VaRの値= [0、1、5、10、15 ]。
values.sort(); 
警告(値);  // 0,1,10,15,5

位置は、負返す方法を交換することなく、2つのパラメータを正の数を返す場合、比較関数を引数として受け取ることができる、より正確に並べ替え、並べ替え()メソッドに、比較関数は2つのパラメータを受信することができる、2つのパラメータが交換される必要がありますこれは、0を返すに等しいです。

 

/升序
 関数は、{(値1、値2)を比較する
        場合   (値< 値2)は{
               返す -1 
       }   他の 場合(値1> 値2)は{
               返す 1 
       } {
               戻り 0 ; 
       } 
} 
 
VaRの値= [0、1、5、10、15 ]。
values.sort(比較)。
警告(値);  // 0,1,5,10,15

 

図6に示すように、操作の方法:CONCAT()、スライス()、スプライス()

(1)CONCAT()は
現在の配列のコピーを作成し、このコピーの最後に受信したパラメータを追加し、最終的には新しいビルドの配列を返します。これは、元の配列の条件を変更しません。

VARの = [、 "赤" "青"、 "緑"色]。
VAR colors2 = colors.concat( "黄色"、[ "黒"、 "ブラウン" ])。
 
警告(色)。  // 赤、青、緑の 
警告(colors2)。// 、赤、青、緑、黄色、黒色、茶色

(2)スライス()
現在のアレイから新しいアレイを作成するために、複数の項目を傍受。アイテムの開始及び終了位置に戻るように、すなわち、一つまたは二つのパラメータを受信するが、アイテムは終了位置を含んでいません。唯一つのパラメータ場合は、すべてのアイテムの開始位置からアレイの最後まで。

パラメータスライスIF()配列の長さを加えた数に対応する位置を決定し、負の数です。終了位置が開始位置よりも小さい場合は、空の配列を返します。

VaRの色= [ "赤"、 "青"、 "緑"、 "黒"、 "褐色" ]。
VAR colors2 = colors.slice(1 )。
VAR colors3 = colors.slice(1、4 ); 
 
警告(colors2)。  // 青、緑、黒、茶色 
アラート(colors3)。// 青、緑、黒

(3)スプライス()
スプライス()メソッドは、エントリ・アレイ、置換、挿入操作を削除してもよいです。
削除:あなたは2つのパラメータを指定する必要があり、あなたはアイテムの位置と数を削除する最初の項目を削除します。スプライス(1、2);
インサート:3つのパラメータは、開始位置、0(アイテムの数を除去するために)挿入する項目を指定します。あなたが複数の項目を挿入したい場合は、第四、第五、...、n番目のアイテムを渡すために続けることができます。
あるいは:3つのパラメータはアイテムの数を挿入すると、任意の数の項目を除去するために、開始位置を指定します。あなたは、指定された場所に任意の数の項目を挿入し、任意の数の項目を削除することができます。

スプライス()メソッドは常に削除されたアイテムなしで、元の配列から削除項目を含む配列を返し、それが空の配列を返します。

// 删除
VARの色= [ "赤" "青"、 "緑" ]。
VAR除去= colors.splice(0,1 )。
警告(色)。  // 青、緑の 
警告(除去)。  // 
 
// 插入 
除去= colors.splice(1、0、 "黒"、 "ブラウン" )。
警告(色)。  // ブルー、ブラック、ブラウン、グリーン 
アラート(除去)。  // [] 
 
// 替换 
除去= colors.splice(1、1、 "赤" "紫" )。
警告(色)。  // 青、赤、紫、茶色、緑の 
警告(削除)。  // 

図7に示すように、方法の位置:のindexOf()、のlastIndexOf()

両方の方法は、2つのパラメータを受け取ることができる:アイテムを見つけて(オプション)位置を見つけるために、インデックスの開始点を表すします。戻り値は、あなたが見つからない、-1が返された場合、配列内のアイテムを見つけたい位置です。
indexOf():フロントは振り返る
のlastIndexOfを():後ろから前に検索

図8に示すように、反復法:すべての()、いくつかの()、フィルタ()、forEachの()、マップ()

すべての()、いくつかは()配列項目は、特定の条件を満たして照会するために使用される、すべての()各項目の関数に渡されたときにいくつかは()のような満足のリターンがある限りながら、真のリターンと一致しています真。

フィルタは、()配列予選アレイアイテムを返します。

地図()関数は、実行中の配列は、元の関数の各項目の結果を渡さ返します。

各入来配列関数用のforEach()操作は値を返しません。

()()低減reduceRight:9、方法をマージ
配列のすべての反復を、その後、戻り値を構築します。配列内の最初の項目、最後のトラバースに一つずつから出発して()を減少させる、reduceRight()は最初の項目に順方向トラバース、アレイの最後の項目です。
両方の方法は、関数が初期値(オプション)をマージするための基礎として第2のそれぞれに対して呼び出され、2つのパラメータを受け付けます。前の値、インデックスの現在値、およびオブジェクトエントリの配列:受信機能は、4つのパラメータを受信することができます。だから、最初の反復は、配列内の2番目の場所です。

第二に、文字列(String)を

1、のcharAt()和charCodeAt()

文字位置0に基づいて、すなわち、パラメータを受け取ります。
charAt():文字の単一指定された位置と文字の文字列を返します。
charCodeAt():文字コードの文字の指定した位置を返します。

2、concat()和加号操作符(+)
concat()用于将一个或多个字符串拼接起来,返回拼接得到的新字符串。但是实际操作中用到更多的是加号操作符(+),更加的简便易行。

3、slice()、substr()、substring()
这三个方法都会返回被操作字符串的一个子字符串。可以接收两个参数,用来表示子字符串的开始位置和结束位置。

slice()和substring()第二个参数指定的是子字符串最后一个字符后面的位置,也就是截取的子字符串中不包含该位置的字符。
substr()第二个参数指定的是子字符串的长度。

如果给的参数是负数:

slice() 会将传入的负值与字符串的长度相加;
substr() 会将负的第一个参数加上字符串的长度,而将第二个负的参数转换为0;
substring() 会将所有的负值参数都转换为0。会自动将小的参数作为开始位置,大的参数作为结束位置。

4、indexOf()和lastIndexOf()

与数组中的位置方法相同。这两个方法都是从一个字符串中搜索给定的子字符串,然后返回子字符串的位置,如果没有找到,则返回-1。

5、trim()

该方法会创建一个字符串的副本,删除前置和后缀的所有空格。

6、大小写转换:toLowerCase()和toUpperCase()

7、模式匹配方法:match()、search()、replace()、split()

match() 与RegExp的exec()方法相同。只接收一个参数,正则表达式或者RegExp对象。

var text = "cat, bat, hat, fat";
var pattern = /.at/;
 
var matches = text.match(pattern);
alert(matches.index);  //0
alert(matches[0]);  //"cat"
alert(pattern.lastIndex);  //0

 

search() 返回字符串中第一个匹配项的索引,如果没有找到匹配项则返回-1。

replace() 接收两个参数,第一个是RegExp对象或者一个字符串,第二个参数可以是一个字符串或者函数。如果第一个参数是字符串,则只会替换第一个子字符串,要想全部替换,则只有提供一个正则表达式,并且制定全局(g)标志。

replace() 方法第二个参数可以是一个函数。函数中传递三个参数:模式的匹配项(一个或者多个)、模式匹配项在字符串中的位置和原始字符串。

function htmlEscape(text) {
    return text.replace(/[<>"&]/g, function(match, pos, originText) {
        switch(match) {
            case "<":
                return "&lt";
            case ">":
                return "&gt";
            case "&":
                return "&amp;";
            case "\"":
                return "&quot";
        }
    });
}
 
alert(htmlEscape("<p class=\"greeting\">hello world!</p>"));  //&lt;p class=&quot;greeting&quot;&gt;hello world!&lt;/p&gt;

 

split() 基于制定的分隔符将一个字符串分割成多个子字符串,并将结果放在一个数组中。与数组的join()方法相反。split()可以接收可选的第二个参数,用于制定数组的大小。

 

おすすめ

転載: www.cnblogs.com/xcyzkh/p/11305431.html