ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript には 2 次元配列がありますか?

JavaScript には 2 次元配列がありますか?

青灯夜游
青灯夜游オリジナル
2021-06-22 18:09:212602ブラウズ

JavaScript には 2 次元配列がありません。 JavaScript には 2 次元配列の概念はありませんが、配列要素の値を配列と等しく設定することで、2 次元配列の構造をシミュレートできます。三次元配列も配列であるため、三次元配列をシミュレートできます。同様に、配列のネストを通じて多次元配列を定義できます。

JavaScript には 2 次元配列がありますか?

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

JavaScript は 2 次元配列を直接サポートしていませんが、配列要素の値を配列と同じに設定することで、2 次元配列の構造をシミュレートできます。 3 次元配列の各要素の値も配列であれば、3 次元配列をシミュレートでき、同様に、配列の入れ子によって多次元配列を定義できます。

例 1

以下は 2 次元配列を定義します。

var a = [  //定义二维数组
    [1.1, 1.2],
    [2.1, 2.2]
];

例 2

次の例では、ネストされた for ステートメントを使用して 1 から 100 までの正の数値を 2 次元配列の形式で格納し、2 つの配列を設計します。次元配列。

var a = [];
for (var i = 0; i < 10; i ++) {  //行循环
    var b = [];  //辅助数组
    for (var j = 0; j < 10; j ++) {  //列循环
        b[j] = i * 10 + j + 1;  //定义数组b的元素值
    }
    a[i] = b;  //把数组b赋值给数组a
}
console.log(a);  //返回1~100的二维数列

シーケンスの形式は次のとおりです:

a = [
    [1,2,3,4,5,6,7,8,9,10],
    [11,12,13,14,15,16,17,18,19,20],
    [21,22,23,24,25,26,27,28,29,30],
    [31,32,33,34,35,36,37,38,39,40],
    [41,42,43,44,45,46,47,48,49,50],
    [51,52,53,54,55,56,57,58,59,60],
    [61,62,63,64,65,66,67,68,69,70],
    [71,72,73,74,75,76,77,78,79,80],
    [81,82,83,84,85,86,87,88,89,90],
    [91,92,93,94,95,96,97,98,99,100]
];

例 3

JavaScript は 2 次元配列をサポートしていないため、ユーザーは構文形式を模倣できます。 2 次元配列の配列を定義します。以下の書き方は文法的には準拠していませんが、JavaScript は例外をスローしません。

var a = [];
a[0,0] = 1;
a[0,1] = 2;
a[1,0] = 3;
a[1,1] = 4;

length 属性が呼び出された場合、戻り値は 2 で、要素が 2 つだけであることを示し、要素の値は別々に読み取られます。

console.log(a.length);  //返回2,说明仅有两个元素有效
console.log(a[0]);  //返回3
console.log(a[1]);  //返回3

JavaScript は 2 次元配列の添字をカンマ式として扱い、その演算の戻り値は最後の値になります。コードの最初の 2 行の割り当ては、コードの次の 2 行の割り当てによって上書きされます。したがって、添字の値を計算して決定してアクセス動作を行うと、以下のように設計することができる。

var a = [], i = 1;  //初始化变量
while(i < 10) {  //指定循环次数
    a[i *= 2, i] = i;  //指定下标为2的幂数时才进行赋值
}
console.log(a.length);  //返回17
console.log(a);  //返回数组[,,2,,4,,,,8,,,,,,,,16]

【関連する推奨事項: JavaScript 学習チュートリアル

以上がJavaScript には 2 次元配列がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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