[解決済み] JavaScriptの配列宣言で「Array()」と「[]」はどう違うのですか?
2022-03-18 01:34:49
質問
このように配列を宣言するのと、実際に何が違うのでしょうか。
var myArray = new Array();
そして
var myArray = [];
解決方法は?
差はありますが、その例では差はありません。
より冗長なメソッドを使用します。
new Array()
コンストラクタに数値を渡すと、その長さの配列が得られます。
x = new Array(5);
alert(x.length); // 5
配列を作成するさまざまな方法を説明するため。
var a = [], // these are the same
b = new Array(), // a and b are arrays with length 0
c = ['foo', 'bar'], // these are the same
d = new Array('foo', 'bar'), // c and d are arrays with 2 strings
// these are different:
e = [3] // e.length == 1, e[0] == 3
f = new Array(3), // f.length == 3, f[0] == undefined
;
もう一つの違いは
new Array()
を使用すると、配列のサイズを設定することができ、それがスタックサイズに影響します。これは、スタックオーバーフローが発生している場合に有効です (
Array.pushとArray.unshiftの性能比較
これは、配列のサイズがスタックのサイズを超えたときに発生し、スタックを再作成する必要があります。そのため、ユースケースによっては、実際に
new Array()
なぜなら、オーバーフローを防ぐことができるからです。
で指摘されているように
この答え
,
new Array(5)
は実際には5つ追加されません。
undefined
を配列に追加します。単に 5 個分のスペースが追加されるだけです。注意すべきは
Array
に依存することが難しくなります。
array.length
を計算することができます。
関連
-
元のイベントが実行されなかった後に要素を追加するためのjQueryソリューション
-
Vueのフィルタの説明
-
Vueの一般的な組み込みディレクティブの説明
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] let "と "var "の使い分けは?
-
[解決済み] JavaScript で配列に値が含まれているかどうかを確認するにはどうすればよいですか?
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] callとapplyの違いは何ですか?
-
[解決済み】JavaScript版sleep()とは?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
JSクロスドメインソリューション リアクト構成 リバースプロキシ
-
Vue Element-uiは、アイコンを追加するためのツリーコントロールノードを詳細に実装しています。
-
JavaScriptにおけるマクロタスクとミクロタスクの詳細
-
vue ディレクティブ v-html と v-text
-
[解決済み】最大呼び出しスタックサイズ超過エラー
-
[解決済み】React - uncaught TypeError: 未定義のプロパティ 'setState' を読み取れない
-
[解決済み】"フォームが接続されていないため、フォームの送信がキャンセルされました "というエラーの取得について
-
[解決済み】 env: node: macにそのようなファイルやディレクトリはありません
-
JSクリックイベント - Uncaught TypeError: プロパティ 'onclick' に null を設定できません。
-
JavaScriptのgetElementById()メソッド入門