javascriptにおけるnew Aray()とvar arr=[]の使い分け
2408 ワード
皆さんはjavascriptを勉強していますが、配列関数new Aray()とvar arr=[]について多くの友達がどのように区別しているのか分かりません。使い方も分かりません。まとめてみます。
var arr=[]
これは字面量で配列を定義する方法です。
var arr=new Aray()
これは配列構造関数を呼び出して生成された配列です。
上の2つの配列を定義する方法は結局同じではないです。
今のところ私たちは大体次のように認めています。
newキーワードでメモリに行って、1つのアドレスを開けて、比較的に資源をつぶして、メモリをつぶします。
字面の量の方式は直接メモリで1つの記憶フィールドを開発するのは比較的に簡単で、資源を消費しません。
私たちはまず上の結論を否定しませんよね。
まず機能的にはvar=arr=[]とvar arr=new Aray()は同じです。
それからコードを使って検証します。
結果
36**
36**
上の2つの時間は全部3600秒ぐらいで、突然上下して、少しも大きな差がありません。
私の運転はMacBook Air(13-innch、Mid 2013)、プロセッサ:1.3 GHz Intel Core i 5、メモリ:4 GB 1600 MHz DDR 3、JS Runnerツールです。
とりあえず上の2つの方法の違いはあまりないと思います。
[]とnew Aray()は文法的に唯一の違いはnew Aray()は配列の長さを直接設定することができます。
new Aray()配列を作るときには、次のような方法があります。
var arr=new Aray();
var arr=new Aray(8);
var arr=new Aray(“c”、“d”、“e”);
文字の量の方式
var d=[111]「222」「333」
ですから、この2つの方法は性能に大きな差はありません。ただ一つの使用習慣で、字面の量がもっと直接的になりました。
一歩譲って、もし私がvar arr=[111]、'222'、'333'を使ったら。配列を定義するとき、構造関数を使ってメモリに保存先を開けませんでしたか?
jsの配列Arayのいくつかの一般的な方法のまとめ
var list=new Aray()は私達がjsでよく書いているコードです。今日はハアラの対象についてどのような方法があるかをまとめます。
リスト[0]=0
リスト[1]=1
リスト[2]=2
またはこのように声明する:var list=[0,1,2]
1 shift()t:配列の最初の要素を削除し、削除された値を返します。ここは0です
2 unshift(3,4):パラメータを配列の前にロードし、配列の長さを返します。今のlist:中3,4,0,1,2です。
3 pop():配列の最後の要素を削除し、削除された値を返します。ここは2.
4 push(3):パラメータを配列の最後にロードし、配列の長さを返します。現在のListでは、0,1,2,3
5センチcat(3、4):2つの配列をつなぎ合わせます。
6 splice(start、deleteCount、val 1、val 2、…):start位置からdeleteCount項目を削除し、その位置からval 1、val 2、…を挿入する。
reverse:配列を逆順にする
var a=[1,2,3,4,5]
var b=a.reverse()//a:[5,4,3,2,1]b:[5,4,3,2,1]
ソト:指定されたパラメータで配列を並べ替えます。
var a=[1,2,3,4,5]
var b=a.sort()//a:[1,2,3,4,5]b:[1,2,3,4,5]
slice(start,end):元の配列から下付きから下付きまでの項目を指定する新しい配列を返します。
var a=[1,2,3,4,5]
var b=a.slice(2,5)//a:[1,2,3,4,5]b:[3,4,5]
join(separator):配列の要素を1つの文字列にグループ化し、separatorをセパレータとし、省略するとデフォルトではコンマで区切ります。
var a=[1,2,3,4,5]
var b=a.join("124")//。a:[1,2,3,4,5]b:「1|2𞓜4|5」
var arr=[]
これは字面量で配列を定義する方法です。
var arr=new Aray()
これは配列構造関数を呼び出して生成された配列です。
上の2つの配列を定義する方法は結局同じではないです。
今のところ私たちは大体次のように認めています。
newキーワードでメモリに行って、1つのアドレスを開けて、比較的に資源をつぶして、メモリをつぶします。
字面の量の方式は直接メモリで1つの記憶フィールドを開発するのは比較的に簡単で、資源を消費しません。
私たちはまず上の結論を否定しませんよね。
まず機能的にはvar=arr=[]とvar arr=new Aray()は同じです。
それからコードを使って検証します。
var startTime=new Date().getTime();
var test1=[];
var test2=[];
for(var i=0;i<1000000;i++){
//test1[i]={};
test2[i]=new Object();
}
var endTime=new Date().getTime();
console.log(' :',endTime-startTime);
上のtest 1とtest 2の配列の各要素は一つの配列で、任意の行のコードを順次注釈できます。大体10回以上テストします。結果
36**
36**
上の2つの時間は全部3600秒ぐらいで、突然上下して、少しも大きな差がありません。
私の運転はMacBook Air(13-innch、Mid 2013)、プロセッサ:1.3 GHz Intel Core i 5、メモリ:4 GB 1600 MHz DDR 3、JS Runnerツールです。
とりあえず上の2つの方法の違いはあまりないと思います。
[]とnew Aray()は文法的に唯一の違いはnew Aray()は配列の長さを直接設定することができます。
new Aray()配列を作るときには、次のような方法があります。
var arr=new Aray();
var arr=new Aray(8);
var arr=new Aray(“c”、“d”、“e”);
文字の量の方式
var d=[111]「222」「333」
ですから、この2つの方法は性能に大きな差はありません。ただ一つの使用習慣で、字面の量がもっと直接的になりました。
一歩譲って、もし私がvar arr=[111]、'222'、'333'を使ったら。配列を定義するとき、構造関数を使ってメモリに保存先を開けませんでしたか?
jsの配列Arayのいくつかの一般的な方法のまとめ
var list=new Aray()は私達がjsでよく書いているコードです。今日はハアラの対象についてどのような方法があるかをまとめます。
リスト[0]=0
リスト[1]=1
リスト[2]=2
またはこのように声明する:var list=[0,1,2]
1 shift()t:配列の最初の要素を削除し、削除された値を返します。ここは0です
2 unshift(3,4):パラメータを配列の前にロードし、配列の長さを返します。今のlist:中3,4,0,1,2です。
3 pop():配列の最後の要素を削除し、削除された値を返します。ここは2.
4 push(3):パラメータを配列の最後にロードし、配列の長さを返します。現在のListでは、0,1,2,3
5センチcat(3、4):2つの配列をつなぎ合わせます。
6 splice(start、deleteCount、val 1、val 2、…):start位置からdeleteCount項目を削除し、その位置からval 1、val 2、…を挿入する。
reverse:配列を逆順にする
var a=[1,2,3,4,5]
var b=a.reverse()//a:[5,4,3,2,1]b:[5,4,3,2,1]
ソト:指定されたパラメータで配列を並べ替えます。
var a=[1,2,3,4,5]
var b=a.sort()//a:[1,2,3,4,5]b:[1,2,3,4,5]
slice(start,end):元の配列から下付きから下付きまでの項目を指定する新しい配列を返します。
var a=[1,2,3,4,5]
var b=a.slice(2,5)//a:[1,2,3,4,5]b:[3,4,5]
join(separator):配列の要素を1つの文字列にグループ化し、separatorをセパレータとし、省略するとデフォルトではコンマで区切ります。
var a=[1,2,3,4,5]
var b=a.join("124")//。a:[1,2,3,4,5]b:「1|2𞓜4|5」