Array multidimensi javascript dengan kunci

Tujuan dari array adalah untuk menyimpan data secara terorganisir dan memungkinkan akses mudah menggunakan indeks atau kunci. Anda telah mempelajari tentang larik satu dimensi pada pelajaran sebelumnya. Memperluas array yang sama, bayangkan jika Anda dapat menyimpan data dalam baris dan kolom. Menyimpan dimensi data yang berbeda dalam sebuah array dimungkinkan dengan array multidimensi. Itu dapat dilihat sebagai array dengan di array lain. Singkatnya array bersarang adalah array multidimensi

Beberapa dimensi data tidak dapat direpresentasikan dalam array satu dimensi. Jadi kita membutuhkan array bersarang. Berikut adalah sintaks array multidimensi-

$MultiDimenArray-Name=array( [key=>] array( [key=>]array…. )))

Anda dapat mendefinisikan array sebagai elemen dari array. Array bersarang di dalam array lain dapat dibuat dengan kunci string seperti array asosiatif atau tanpa kunci. Jika tidak ada kunci yang ditentukan maka nilai indeks secara otomatis dialokasikan ke elemen array seperti halnya array yang diindeks

Contoh Array Multidimensi PHP

Jika Anda ingin menyimpan data dari tenaga penjualan yang berbeda di kota yang berbeda untuk kuartal yang berbeda dalam setahun, array multidimensi PHP akan menjadi alat yang berguna.

Pramuniaga. Andy

Kuartal PertamaKuartal KeduaKuartal KetigaKuartal KeempatNew York36239888Chicago78564537Denver34783621

Pramuniaga. Bob

Kuartal PertamaKuartal KeduaKuartal KetigaKuartal KeempatNew York22677198Chicago76538361Denver45692345

Pramuniaga. Chris

Kuartal PertamaKuartal KeduaKuartal KetigaKuartal KeempatNew York22675645Chicago76537836Denver22677198

Array Multidimensi dengan Kunci

Dalam contoh berikut, elemen array bersarang diasosiasikan dengan kunci. Jadi, saat mengaksesnya, kunci harus digunakan seperti yang Anda lakukan di array asosiatif

<?php
$SalesData=array("Andy"=>
	array("NewYork"=>array("Q1"=>36,"Q2"=>23,"Q3"=>98,"Q4"=>88),
	      "Chicago"=>array("Q1"=>78,"Q2"=>56,"Q3"=>45,"Q4"=>37),
	      "Denver"=>array("Q1"=>34,"Q2"=>78,"Q3"=>36,"Q4"=>21)),
		"Bob"=>
		array("NewYork"=>array("Q1"=>22,"Q2"=>67,"Q3"=>71,"Q4"=>98),
		"Chicago"=>array("Q1"=>76,"Q2"=>53,"Q3"=>83,"Q4"=>61),
		"Denver"=>array("Q1"=>45,"Q2"=>69,"Q3"=>23,"Q4"=>46)	),
		"Chris"=>array( NewYork"=>array("Q1"=>22,"Q2"=>67,"Q3"=>56,"Q4"=>45),
		"Chicago"=>array("Q1"=>76,"Q2"=>53,"Q3"=>78,"Q4"=>36),
		"Denver"=>array("Q1"=>22,"Q2"=>67,"Q3"=>71,"Q4"=>98)));
				
echo $SalesData["Andy"]["Chicago"]["Q3"]. ',';	
echo $SalesData["Andy"]["NewYork"]["Q4"].",";	
echo $SalesData["Bob"]["Denver"]["Q1"].",";	
echo $SalesData["Bob"]["Chicago"]["Q2"].",";	
echo $SalesData["Chris"]["Denver"]["Q1"].",";	
echo $SalesData["Chris"]["NewYork"]["Q4"];
?>

Array multidimensi javascript dengan kunci

Array Multidimensi dengan Indeks

Saat Anda tidak menentukan kunci saat membuat array multidimensi PHP, indeks secara otomatis ditetapkan ke elemen. Sekarang Anda dapat menggunakan indeks dengan cara yang sama seperti yang Anda lakukan dengan array satu dimensi. Anda dapat menggunakan For Loop/While Loop untuk mengulang melalui array bersarang dan menggunakan elemen seperti yang ditunjukkan pada contoh kode di bawah ini

Salah satu idenya adalah membuat pencarian objek. Ini sangat berguna jika Anda harus mencari nilai berkali-kali dan nilainya adalah hal-hal sederhana seperti string DAN Anda mencari kecocokan yang tepat. Pertandingan parsial akan lebih sulit dicapai


function reverseProperties(obj) {
    var newObj = {};
    for (var prop in obj) {
        if (obj.hasOwnProperty(prop) &&
            typeof(obj[prop]) === "string") {
            if (!newObj.hasOwnProperty(obj[prop])) {
                newObj[obj[prop]] = [];
            }
            newObj[obj[prop]].push(prop);
        }
    }
    return newObj;
}

var arr = {};
arr['thisKey'] = { prop1 : 'a', prop2 : 'b', prop3 : 'c' };
arr['thatKey'] = { prop1 : 'x', prop2 : 'y', prop3 : 'z' };
arr['otherKey'] = { prop1 : 'red', prop2 : 'orange', prop3 : 'blue' };

var reversed = reverseProperties(arr['thisKey']);

// Then to access simply use:

console.log(reversed['a']);
//or
console.log(reversed.a);

_

Anda tentu saja harus menguji apakah properti (nilai) itu ada sebelum menggunakannya. Anda mungkin ingin menulis fungsi pembantu lain untuk itu


function getProperty(obj,propName) {
   if (obj.hasOwnProperty(propName)) {
        return obj[propName];
   }
   return null;
}

var properties = getProperty(reversed,'a');

Untuk membuatnya lebih rapi, Anda dapat memikirkan untuk meletakkan fungsi-fungsi ini di namespace

Array multidimensi javascript dengan kunci
daveh0

Terima kasih atas tanggapannya. Jika saya membaca ini dengan benar, sepertinya saya harus meneruskan fungsi larik utama dengan nama kunci. Dalam hal ini, arr['thisKey']. Tapi saya sebenarnya mencoba mendapatkan fungsi untuk mengembalikan 'thisKey', berdasarkan saya mengatakan bahwa prop1 = a

Apakah saya melakukan sesuatu yang salah?

Saya dengan cepat menjalankan kode berikut yang berfungsi. Ini mengembalikan array dengan semua kunci yang berisi kunci/nilai yang Anda minta
Itu memanfaatkan metode Array bawaan yang ada di sebagian besar browser web sekarang. Halaman untuk filter dan [url=“https. // pengembang. mozilla. org/en/JavaScript/Reference/Global_Objects/Array/some”]beberapa memiliki kode kompatibilitas jika Anda ingin menggunakannya di browser yang kurang modern


function filterKeys(obj, func) {
    return Array.prototype.filter.call(Object.keys(obj), func, obj);
}
function someKeys(obj, func) {
    return Array.prototype.some.call(Object.keys(obj), func, obj);
}
function atLeastOnePropertyMatches(obj, requiredProp) {
    return someKeys(obj, function (prop) {
        if (requiredProp.hasOwnProperty(prop)) {
            return this[prop] === requiredProp[prop];
        }
    });
}
function getMatchingKeys(obj, requiredProp) {
    return filterKeys(obj, function (prop) {
        return atLeastOnePropertyMatches(this[prop], required);
    });
}
var arr = {
    thisKey: {prop1: 'a', prop2: 'b', prop3: 'c'},
    thatKey: {prop1: 'x', prop2: 'y', prop3: 'z'},
    otherKey: {prop1: 'red', prop2: 'orange', prop3: 'blue'}
},
    required = {prop2: 'orange'};
    results = [];

results = getMatchingKeys(arr, required);
// results is now ['otherkey']

Jika Anda hanya ingin mengembalikan nama properti pertama yang cocok, Anda dapat mengembalikan hanya kunci pertama yang cocok yang ditemukan

Bagaimana cara menulis array multidimensi dalam JavaScript?

Inilah cara Anda membuat larik multidimensi dalam JavaScript. biarkan siswa1 = ['Jack', 24];

Bagaimana cara membuat array dengan kunci dan nilai dalam JavaScript?

Cara membuat larik nilai kunci dalam javascript .
biarkan obj = {}; . com'; . .
untuk(biarkan kunci di obj){ konsol. .
for(biarkan memasukkan obj){ if(obj

Bagaimana cara menambahkan elemen dalam JavaScript array multidimensi?

Untuk menambahkan elemen dalam array multidimensi dalam javascript kita dapat menggunakan metode push() Array atau menggunakan notasi indeks. Metode push() akan menambahkan elemen di akhir array yang diberikan sedangkan metode splice() akan menambahkan elemen pada indeks yang ditentukan

Bagaimana Anda mengakses elemen dalam array multidimensi?

Anda dapat mengakses elemen array dengan mengacu pada nomor indeksnya . Indeks dalam array NumPy dimulai dengan 0, artinya elemen pertama memiliki indeks 0, dan elemen kedua memiliki indeks 1, dll.