ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript 配列の添字はどこから始まるのでしょうか?

JavaScript 配列の添字はどこから始まるのでしょうか?

青灯夜游
青灯夜游オリジナル
2021-10-28 17:02:414530ブラウズ

Javascript の配列添字は 0 から始まります。理由: 1. 0 から始めると、減算演算が 1 つ減り、CPU 命令演算が減り、CPU 効率が向上します。2. 物理メモリのアドレスは 0 から始まります。

JavaScript 配列の添字はどこから始まるのでしょうか?

このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。

JavaScript 配列の添字は 0 から始まります。

では、なぜ JavaScript の配列添字は 1 ではなく 0 から始まるのでしょうか?

理由 1: 歴史的な理由

言語の出現順序は、初期から後期の C、Java、JavaScript です。

C 言語の配列添字は 0 から始まります ->Java も ->JavaScript も同様です。

追加の学習と理解のコストを削減します。

理由 2: CPU 命令の動作を減らす

(1) 添え字は 0 から始まります:

配列のアドレス指定 - arr[i] = Base_address i * type_size (1)

ここで、base_address は配列 arr の最初のアドレス、arr0 はオフセット 0 の配列、つまり配列 arr の最初のアドレス、i はオフセット、type_size はバイト数です。たとえば、 int は 32 ビット、つまり 4 バイトです。

(2) 添え字は 1 から始まります:

配列のアドレス指定 - arr[i] = Base_address (i -1) * type_size (2)

2 つを比較します。計算式を確認すると、式 (2) では、CPU アドレッシングごとに i-1 演算が 1 つ、つまり減算命令が 1 つ必要になることがわかります。

配列などの基本的なデータ構造の場合、どの高級プログラミング言語であっても、間接的に (Java の ArrayList などのコンテナの基本データ構造として) または直接的に使用されることが多いため、次のようにする必要があります。 CPU リソースを消費します。 0からスタートすることで減算演算を1回減らすことができ、CPUの効率が向上します。

理由 3: 物理メモリのアドレスは 0

コンピューターのメイン メモリは、複数の連続したバイト サイズの単位で構成される配列であり、各バイトはすべてに対応しています。一意の物理アドレスであり、最初のバイトのアドレスは 0 です。

[推奨学習: JavaScript 上級チュートリアル]

以上がJavaScript 配列の添字はどこから始まるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。