Apa gunanya objek peta dalam javascript?

JavaScript menyediakan metode map() untuk membuat fungsi peta untuk berinteraksi dengan properti objek. Ini mengulangi semua atribut objek dengan memanfaatkan nilai kunci. Selain itu, peta. metode set() digunakan untuk menetapkan atribut objek. Apalagi Obyek. entri() mengembalikan semua atribut objek setelah membuat fungsi peta di JavaScript. Artikel ini mendemonstrasikan pembuatan fungsi peta untuk objek dan menampilkan semua atribut objek di jendela konsol

Peta adalah kumpulan item data yang diberi kunci, seperti

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
5. Tetapi perbedaan utamanya adalah
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_3 mengizinkan kunci jenis apa pun

Metode dan properti adalah

  • let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    _7 – membuat peta
  • let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    8 – menyimpan nilai dengan kunci
  • let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    _9 – mengembalikan nilai dengan kunci,
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    0 jika
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    1 tidak ada di peta
  • let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    2 – mengembalikan
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    3 jika
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    1 ada,
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    5 sebaliknya
  • let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    6 – menghapus elemen (pasangan kunci/nilai) dengan kunci
  • let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    7 – menghapus semuanya dari peta
  • let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    8 – mengembalikan jumlah elemen saat ini

Contohnya

let map = new Map();

map.set('1', 'str1');   // a string key
map.set(1, 'num1');     // a numeric key
map.set(true, 'bool1'); // a boolean key

// remember the regular Object? it would convert keys to string
// Map keeps the type, so these two are different:
alert( map.get(1)   ); // 'num1'
alert( map.get('1') ); // 'str1'

alert( map.size ); // 3

Seperti yang bisa kita lihat, tidak seperti objek, kunci tidak diubah menjadi string. Semua jenis kunci dimungkinkan

let john = { name: "John" };
let ben = { name: "Ben" };

let visitsCountObj = {}; // try to use an object

visitsCountObj[ben] = 234; // try to use ben object as the key
visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced

// That's what got written!
alert( visitsCountObj["[object Object]"] ); // 123
9 bukan cara yang tepat untuk menggunakan
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3

Meskipun

let john = { name: "John" };
let ben = { name: "Ben" };

let visitsCountObj = {}; // try to use an object

visitsCountObj[ben] = 234; // try to use ben object as the key
visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced

// That's what got written!
alert( visitsCountObj["[object Object]"] ); // 123
_9 juga berfungsi, mis. g. kita dapat mengatur
map.set('1', 'str1')
  .set(1, 'num1')
  .set(true, 'bool1');
_2, ini memperlakukan
map.set('1', 'str1')
  .set(1, 'num1')
  .set(true, 'bool1');
3 sebagai objek JavaScript biasa, jadi ini menyiratkan semua batasan yang sesuai (hanya kunci string/simbol dan sebagainya)

Jadi kita harus menggunakan metode ________18______3.

map.set('1', 'str1')
  .set(1, 'num1')
  .set(true, 'bool1');
5,
map.set('1', 'str1')
  .set(1, 'num1')
  .set(true, 'bool1');
6 dan seterusnya

Peta juga dapat menggunakan objek sebagai kunci

Contohnya

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123

Menggunakan objek sebagai kunci adalah salah satu fitur

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3 yang paling menonjol dan penting. Hal yang sama tidak dihitung untuk
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
5. String sebagai kunci di
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
5 baik-baik saja, tetapi kita tidak dapat menggunakan
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
5 lain sebagai kunci di
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
5

Mari mencoba

let john = { name: "John" };
let ben = { name: "Ben" };

let visitsCountObj = {}; // try to use an object

visitsCountObj[ben] = 234; // try to use ben object as the key
visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced

// That's what got written!
alert( visitsCountObj["[object Object]"] ); // 123

Karena

let recipeMap = new Map([
  ['cucumber', 500],
  ['tomatoes', 350],
  ['onion',    50]
]);

// iterate over keys (vegetables)
for (let vegetable of recipeMap.keys()) {
  alert(vegetable); // cucumber, tomatoes, onion
}

// iterate over values (amounts)
for (let amount of recipeMap.values()) {
  alert(amount); // 500, 350, 50
}

// iterate over [key, value] entries
for (let entry of recipeMap) { // the same as of recipeMap.entries()
  alert(entry); // cucumber,500 (and so on)
}
_2 adalah sebuah objek, ia mengonversi semua
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
5 kunci, seperti
let recipeMap = new Map([
  ['cucumber', 500],
  ['tomatoes', 350],
  ['onion',    50]
]);

// iterate over keys (vegetables)
for (let vegetable of recipeMap.keys()) {
  alert(vegetable); // cucumber, tomatoes, onion
}

// iterate over values (amounts)
for (let amount of recipeMap.values()) {
  alert(amount); // 500, 350, 50
}

// iterate over [key, value] entries
for (let entry of recipeMap) { // the same as of recipeMap.entries()
  alert(entry); // cucumber,500 (and so on)
}
4 dan
let recipeMap = new Map([
  ['cucumber', 500],
  ['tomatoes', 350],
  ['onion',    50]
]);

// iterate over keys (vegetables)
for (let vegetable of recipeMap.keys()) {
  alert(vegetable); // cucumber, tomatoes, onion
}

// iterate over values (amounts)
for (let amount of recipeMap.values()) {
  alert(amount); // 500, 350, 50
}

// iterate over [key, value] entries
for (let entry of recipeMap) { // the same as of recipeMap.entries()
  alert(entry); // cucumber,500 (and so on)
}
5 di atas, menjadi string yang sama
let recipeMap = new Map([
  ['cucumber', 500],
  ['tomatoes', 350],
  ['onion',    50]
]);

// iterate over keys (vegetables)
for (let vegetable of recipeMap.keys()) {
  alert(vegetable); // cucumber, tomatoes, onion
}

// iterate over values (amounts)
for (let amount of recipeMap.values()) {
  alert(amount); // 500, 350, 50
}

// iterate over [key, value] entries
for (let entry of recipeMap) { // the same as of recipeMap.entries()
  alert(entry); // cucumber,500 (and so on)
}
6. Jelas bukan yang kita inginkan

Bagaimana

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_3 membandingkan kunci

Untuk menguji kunci kesetaraan,

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3 menggunakan algoritme. Ini kira-kira sama dengan persamaan ketat
let recipeMap = new Map([
  ['cucumber', 500],
  ['tomatoes', 350],
  ['onion',    50]
]);

// iterate over keys (vegetables)
for (let vegetable of recipeMap.keys()) {
  alert(vegetable); // cucumber, tomatoes, onion
}

// iterate over values (amounts)
for (let amount of recipeMap.values()) {
  alert(amount); // 500, 350, 50
}

// iterate over [key, value] entries
for (let entry of recipeMap) { // the same as of recipeMap.entries()
  alert(entry); // cucumber,500 (and so on)
}
9, tetapi perbedaannya adalah bahwa
// runs the function for each (key, value) pair
recipeMap.forEach( (value, key, map) => {
  alert(`${key}: ${value}`); // cucumber: 500 etc
});
0 dianggap sama dengan
// runs the function for each (key, value) pair
recipeMap.forEach( (value, key, map) => {
  alert(`${key}: ${value}`); // cucumber: 500 etc
});
0. Jadi
// runs the function for each (key, value) pair
recipeMap.forEach( (value, key, map) => {
  alert(`${key}: ${value}`); // cucumber: 500 etc
});
_0 dapat digunakan sebagai kunci juga

Algoritme ini tidak dapat diubah atau disesuaikan

Merantai

Setiap

// runs the function for each (key, value) pair
recipeMap.forEach( (value, key, map) => {
  alert(`${key}: ${value}`); // cucumber: 500 etc
});
_3 panggilan mengembalikan peta itu sendiri, sehingga kita dapat "menghubungkan" panggilan

map.set('1', 'str1')
  .set(1, 'num1')
  .set(true, 'bool1');

Untuk mengulang

map.set('1', 'str1')
  .set(1, 'num1')
  .set(true, 'bool1');
_3, ada 3 metode

  • // runs the function for each (key, value) pair
    recipeMap.forEach( (value, key, map) => {
      alert(`${key}: ${value}`); // cucumber: 500 etc
    });
    5 – mengembalikan iterable untuk kunci,
  • // runs the function for each (key, value) pair
    recipeMap.forEach( (value, key, map) => {
      alert(`${key}: ${value}`); // cucumber: 500 etc
    });
    6 – mengembalikan iterable untuk nilai,
  • // runs the function for each (key, value) pair
    recipeMap.forEach( (value, key, map) => {
      alert(`${key}: ${value}`); // cucumber: 500 etc
    });
    7 – mengembalikan iterable untuk entri
    // runs the function for each (key, value) pair
    recipeMap.forEach( (value, key, map) => {
      alert(`${key}: ${value}`); // cucumber: 500 etc
    });
    8, ini digunakan secara default di
    // runs the function for each (key, value) pair
    recipeMap.forEach( (value, key, map) => {
      alert(`${key}: ${value}`); // cucumber: 500 etc
    });
    9

Contohnya

let recipeMap = new Map([
  ['cucumber', 500],
  ['tomatoes', 350],
  ['onion',    50]
]);

// iterate over keys (vegetables)
for (let vegetable of recipeMap.keys()) {
  alert(vegetable); // cucumber, tomatoes, onion
}

// iterate over values (amounts)
for (let amount of recipeMap.values()) {
  alert(amount); // 500, 350, 50
}

// iterate over [key, value] entries
for (let entry of recipeMap) { // the same as of recipeMap.entries()
  alert(entry); // cucumber,500 (and so on)
}

Urutan penyisipan digunakan

Iterasi berjalan dalam urutan yang sama dengan nilai yang dimasukkan.

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3 mempertahankan urutan ini, tidak seperti
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
5 biasa

Selain itu,

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3 memiliki metode
// array of [key, value] pairs
let map = new Map([
  ['1',  'str1'],
  [1,    'num1'],
  [true, 'bool1']
]);

alert( map.get('1') ); // str1
3 bawaan, mirip dengan
// array of [key, value] pairs
let map = new Map([
  ['1',  'str1'],
  [1,    'num1'],
  [true, 'bool1']
]);

alert( map.get('1') ); // str1
4

// runs the function for each (key, value) pair
recipeMap.forEach( (value, key, map) => {
  alert(`${key}: ${value}`); // cucumber: 500 etc
});

Saat

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_3 dibuat, kita dapat melewatkan array (atau iterable lainnya) dengan pasangan kunci/nilai untuk inisialisasi, seperti ini

// array of [key, value] pairs
let map = new Map([
  ['1',  'str1'],
  [1,    'num1'],
  [true, 'bool1']
]);

alert( map.get('1') ); // str1

Jika kita memiliki objek biasa, dan kita ingin membuat

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3 darinya, maka kita dapat menggunakan metode Object bawaan. entri(obj) yang mengembalikan array pasangan kunci/nilai untuk objek persis dalam format itu

Jadi kita bisa membuat peta dari objek seperti ini

let obj = {
  name: "John",
  age: 30
};

let map = new Map(Object.entries(obj));

alert( map.get('name') ); // John

Di sini,

// array of [key, value] pairs
let map = new Map([
  ['1',  'str1'],
  [1,    'num1'],
  [true, 'bool1']
]);

alert( map.get('1') ); // str1
_7 mengembalikan larik pasangan kunci/nilai.
// array of [key, value] pairs
let map = new Map([
  ['1',  'str1'],
  [1,    'num1'],
  [true, 'bool1']
]);

alert( map.get('1') ); // str1
_8. Itulah yang dibutuhkan
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3

Kami baru saja melihat cara membuat

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3 dari objek biasa dengan
let obj = {
  name: "John",
  age: 30
};

let map = new Map(Object.entries(obj));

alert( map.get('name') ); // John
1

Ada

let obj = {
  name: "John",
  age: 30
};

let map = new Map(Object.entries(obj));

alert( map.get('name') ); // John
2 metode yang sebaliknya. diberikan array
// runs the function for each (key, value) pair
recipeMap.forEach( (value, key, map) => {
  alert(`${key}: ${value}`); // cucumber: 500 etc
});
8 pasangan, itu membuat objek dari mereka

let prices = Object.fromEntries([
  ['banana', 1],
  ['orange', 2],
  ['meat', 4]
]);

// now prices = { banana: 1, orange: 2, meat: 4 }

alert(prices.orange); // 2

Kita dapat menggunakan

let obj = {
  name: "John",
  age: 30
};

let map = new Map(Object.entries(obj));

alert( map.get('name') ); // John
_2 untuk mendapatkan objek polos dari
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3

E. g. kami menyimpan data dalam

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3, tetapi kami harus meneruskannya ke kode pihak ke-3 yang mengharapkan objek biasa

Ini dia

let map = new Map();
map.set('banana', 1);
map.set('orange', 2);
map.set('meat', 4);

let obj = Object.fromEntries(map.entries()); // make a plain object (*)

// done!
// obj = { banana: 1, orange: 2, meat: 4 }

alert(obj.orange); // 2

Panggilan ke

// runs the function for each (key, value) pair
recipeMap.forEach( (value, key, map) => {
  alert(`${key}: ${value}`); // cucumber: 500 etc
});
7 mengembalikan iterable pasangan kunci/nilai, persis dalam format yang tepat untuk
let obj = {
  name: "John",
  age: 30
};

let map = new Map(Object.entries(obj));

alert( map.get('name') ); // John
2

Kita juga bisa membuat garis

let obj = {
  name: "John",
  age: 30
};

let map = new Map(Object.entries(obj));

alert( map.get('name') ); // John
_9 lebih pendek

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
0

Itu sama, karena

let obj = {
  name: "John",
  age: 30
};

let map = new Map(Object.entries(obj));

alert( map.get('name') ); // John
_2 mengharapkan objek yang dapat diubah sebagai argumen. Belum tentu array. Dan iterasi standar untuk
map.set('1', 'str1')
  .set(1, 'num1')
  .set(true, 'bool1');
3 mengembalikan pasangan kunci/nilai yang sama dengan
// runs the function for each (key, value) pair
recipeMap.forEach( (value, key, map) => {
  alert(`${key}: ${value}`); // cucumber: 500 etc
});
7. Jadi kami mendapatkan objek biasa dengan kunci/nilai yang sama dengan
map.set('1', 'str1')
  .set(1, 'num1')
  .set(true, 'bool1');
3

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
4 adalah kumpulan tipe khusus – “himpunan nilai” (tanpa kunci), di mana setiap nilai hanya dapat muncul sekali

Metode utamanya adalah

  • let prices = Object.fromEntries([
      ['banana', 1],
      ['orange', 2],
      ['meat', 4]
    ]);
    
    // now prices = { banana: 1, orange: 2, meat: 4 }
    
    alert(prices.orange); // 2
    5 – membuat set, dan jika objek
    let prices = Object.fromEntries([
      ['banana', 1],
      ['orange', 2],
      ['meat', 4]
    ]);
    
    // now prices = { banana: 1, orange: 2, meat: 4 }
    
    alert(prices.orange); // 2
    6 disediakan (biasanya array), menyalin nilai darinya ke dalam set
  • let prices = Object.fromEntries([
      ['banana', 1],
      ['orange', 2],
      ['meat', 4]
    ]);
    
    // now prices = { banana: 1, orange: 2, meat: 4 }
    
    alert(prices.orange); // 2
    7 – menambahkan nilai, mengembalikan set itu sendiri
  • let prices = Object.fromEntries([
      ['banana', 1],
      ['orange', 2],
      ['meat', 4]
    ]);
    
    // now prices = { banana: 1, orange: 2, meat: 4 }
    
    alert(prices.orange); // 2
    8 – menghapus nilai, mengembalikan
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    3 jika
    let map = new Map();
    map.set('banana', 1);
    map.set('orange', 2);
    map.set('meat', 4);
    
    let obj = Object.fromEntries(map.entries()); // make a plain object (*)
    
    // done!
    // obj = { banana: 1, orange: 2, meat: 4 }
    
    alert(obj.orange); // 2
    0 ada pada saat panggilan, jika tidak
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    5
  • let map = new Map();
    map.set('banana', 1);
    map.set('orange', 2);
    map.set('meat', 4);
    
    let obj = Object.fromEntries(map.entries()); // make a plain object (*)
    
    // done!
    // obj = { banana: 1, orange: 2, meat: 4 }
    
    alert(obj.orange); // 2
    2 – mengembalikan
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    3 jika nilainya ada di himpunan, jika tidak
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    5
  • let map = new Map();
    map.set('banana', 1);
    map.set('orange', 2);
    map.set('meat', 4);
    
    let obj = Object.fromEntries(map.entries()); // make a plain object (*)
    
    // done!
    // obj = { banana: 1, orange: 2, meat: 4 }
    
    alert(obj.orange); // 2
    5 – menghapus semuanya dari set
  • let map = new Map();
    map.set('banana', 1);
    map.set('orange', 2);
    map.set('meat', 4);
    
    let obj = Object.fromEntries(map.entries()); // make a plain object (*)
    
    // done!
    // obj = { banana: 1, orange: 2, meat: 4 }
    
    alert(obj.orange); // 2
    6 – adalah jumlah elemen

Fitur utamanya adalah panggilan berulang

let prices = Object.fromEntries([
  ['banana', 1],
  ['orange', 2],
  ['meat', 4]
]);

// now prices = { banana: 1, orange: 2, meat: 4 }

alert(prices.orange); // 2
7 dengan nilai yang sama tidak melakukan apa-apa. Itulah alasan mengapa setiap nilai muncul di
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
4 hanya sekali

Misalnya, ada pengunjung yang datang, dan kami ingin mengingat semua orang. Tetapi kunjungan berulang tidak boleh mengarah pada duplikat. Seorang pengunjung harus "dihitung" hanya sekali

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
4 adalah hal yang tepat untuk itu

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_1

Alternatif untuk

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_4 bisa berupa larik pengguna, dan kode untuk memeriksa duplikat pada setiap penyisipan menggunakan arr. Temukan. Tetapi kinerjanya akan jauh lebih buruk, karena metode ini menelusuri seluruh larik yang memeriksa setiap elemen.
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
4 jauh lebih baik dioptimalkan secara internal untuk pemeriksaan keunikan

Kita dapat mengulang satu set dengan ________38______9 atau menggunakan

// array of [key, value] pairs
let map = new Map([
  ['1',  'str1'],
  [1,    'num1'],
  [true, 'bool1']
]);

alert( map.get('1') ); // str1
3

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_2

Perhatikan hal yang lucu. Fungsi panggilan balik yang diteruskan dalam

// array of [key, value] pairs
let map = new Map([
  ['1',  'str1'],
  [1,    'num1'],
  [true, 'bool1']
]);

alert( map.get('1') ); // str1
3 memiliki 3 argumen. a
let map = new Map();
map.set('banana', 1);
map.set('orange', 2);
map.set('meat', 4);

let obj = Object.fromEntries(map.entries()); // make a plain object (*)

// done!
// obj = { banana: 1, orange: 2, meat: 4 }

alert(obj.orange); // 2
0, lalu nilai yang sama
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
06, lalu objek target. Memang, nilai yang sama muncul di argumen dua kali

Itu untuk kompatibilitas dengan

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_3 di mana panggilan balik berlalu
// array of [key, value] pairs
let map = new Map([
  ['1',  'str1'],
  [1,    'num1'],
  [true, 'bool1']
]);

alert( map.get('1') ); // str1
3 memiliki tiga argumen. Terlihat agak aneh, pasti. Tapi ini dapat membantu mengganti
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_3 dengan
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
4 dalam kasus tertentu dengan mudah, dan sebaliknya

Metode yang sama

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_3 untuk iterator juga didukung

  • let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    _12 – mengembalikan objek iterable untuk nilai,
  • let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    _13 – sama seperti
    let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    12, untuk kompatibilitas dengan
    let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    3,
  • let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    _16 – mengembalikan objek iterable untuk entri
    let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    17, ada untuk kompatibilitas dengan
    let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    3

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_3 – adalah kumpulan nilai yang dikunci

Metode dan properti

  • let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    _20 – membuat peta, dengan opsional
    let prices = Object.fromEntries([
      ['banana', 1],
      ['orange', 2],
      ['meat', 4]
    ]);
    
    // now prices = { banana: 1, orange: 2, meat: 4 }
    
    alert(prices.orange); // 2
    6 (e. g. array) dari
    let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    _22 pasang untuk inisialisasi
  • let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    8 – menyimpan nilai dengan kunci, mengembalikan peta itu sendiri
  • let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    _9 – mengembalikan nilai dengan kunci,
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    0 jika
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    1 tidak ada di peta
  • let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    2 – mengembalikan
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    3 jika
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    1 ada,
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    5 sebaliknya
  • let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    6 – menghapus elemen dengan kunci, mengembalikan
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    3 jika
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    1 ada pada saat panggilan, jika tidak
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    5
  • let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    7 – menghapus semuanya dari peta
  • let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    8 – mengembalikan jumlah elemen saat ini

Perbedaan dari

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
biasa5

  • Kunci apa saja, objek bisa menjadi kunci
  • Metode nyaman tambahan, properti
    let john = { name: "John" };
    
    // for every user, let's store their visits count
    let visitsCountMap = new Map();
    
    // john is the key for the map
    visitsCountMap.set(john, 123);
    
    alert( visitsCountMap.get(john) ); // 123
    38

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
_4 – adalah kumpulan nilai unik

Metode dan properti

  • let prices = Object.fromEntries([
      ['banana', 1],
      ['orange', 2],
      ['meat', 4]
    ]);
    
    // now prices = { banana: 1, orange: 2, meat: 4 }
    
    alert(prices.orange); // 2
    5 – membuat set, dengan opsional
    let prices = Object.fromEntries([
      ['banana', 1],
      ['orange', 2],
      ['meat', 4]
    ]);
    
    // now prices = { banana: 1, orange: 2, meat: 4 }
    
    alert(prices.orange); // 2
    6 (e. g. array) nilai untuk inisialisasi
  • let prices = Object.fromEntries([
      ['banana', 1],
      ['orange', 2],
      ['meat', 4]
    ]);
    
    // now prices = { banana: 1, orange: 2, meat: 4 }
    
    alert(prices.orange); // 2
    7 – menambahkan nilai (tidak melakukan apa-apa jika
    let map = new Map();
    map.set('banana', 1);
    map.set('orange', 2);
    map.set('meat', 4);
    
    let obj = Object.fromEntries(map.entries()); // make a plain object (*)
    
    // done!
    // obj = { banana: 1, orange: 2, meat: 4 }
    
    alert(obj.orange); // 2
    0 ada), mengembalikan himpunan itu sendiri
  • let prices = Object.fromEntries([
      ['banana', 1],
      ['orange', 2],
      ['meat', 4]
    ]);
    
    // now prices = { banana: 1, orange: 2, meat: 4 }
    
    alert(prices.orange); // 2
    8 – menghapus nilai, mengembalikan
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    3 jika
    let map = new Map();
    map.set('banana', 1);
    map.set('orange', 2);
    map.set('meat', 4);
    
    let obj = Object.fromEntries(map.entries()); // make a plain object (*)
    
    // done!
    // obj = { banana: 1, orange: 2, meat: 4 }
    
    alert(obj.orange); // 2
    0 ada pada saat panggilan, jika tidak
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    5
  • let map = new Map();
    map.set('banana', 1);
    map.set('orange', 2);
    map.set('meat', 4);
    
    let obj = Object.fromEntries(map.entries()); // make a plain object (*)
    
    // done!
    // obj = { banana: 1, orange: 2, meat: 4 }
    
    alert(obj.orange); // 2
    2 – mengembalikan
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    3 jika nilainya ada di himpunan, jika tidak
    let john = { name: "John" };
    let ben = { name: "Ben" };
    
    let visitsCountObj = {}; // try to use an object
    
    visitsCountObj[ben] = 234; // try to use ben object as the key
    visitsCountObj[john] = 123; // try to use john object as the key, ben object will get replaced
    
    // That's what got written!
    alert( visitsCountObj["[object Object]"] ); // 123
    5
  • let map = new Map();
    map.set('banana', 1);
    map.set('orange', 2);
    map.set('meat', 4);
    
    let obj = Object.fromEntries(map.entries()); // make a plain object (*)
    
    // done!
    // obj = { banana: 1, orange: 2, meat: 4 }
    
    alert(obj.orange); // 2
    5 – menghapus semuanya dari set
  • let map = new Map();
    map.set('banana', 1);
    map.set('orange', 2);
    map.set('meat', 4);
    
    let obj = Object.fromEntries(map.entries()); // make a plain object (*)
    
    // done!
    // obj = { banana: 1, orange: 2, meat: 4 }
    
    alert(obj.orange); // 2
    6 – adalah jumlah elemen

Iterasi di atas

let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
3 dan
let john = { name: "John" };

// for every user, let's store their visits count
let visitsCountMap = new Map();

// john is the key for the map
visitsCountMap.set(john, 123);

alert( visitsCountMap.get(john) ); // 123
4 selalu dalam urutan penyisipan, jadi kami tidak dapat mengatakan bahwa koleksi ini tidak diurutkan, tetapi kami tidak dapat menyusun ulang elemen atau langsung mendapatkan elemen berdasarkan nomornya

Haruskah saya menggunakan peta atau objek dalam JavaScript?

Dalam Objek, tipe data bidang kunci dibatasi untuk bilangan bulat, string, dan simbol. Sedangkan di Peta, bidang kunci dapat berupa tipe data apa saja (bilangan bulat, larik, bahkan objek. ) Di Peta, urutan asli elemen dipertahankan. Ini tidak benar dalam kasus objek.

Apa yang dimaksud dengan memetakan objek?

Peta objek adalah aset uji yang berisi item yang mengaitkan nama logis (alias) dengan kontrol atau jendela, bukan penentu lokasi kontrol atau jendela. Once a control is registered in an object map asset, all references to it in scripts are made by its alias, rather than by its actual locator name.

Untuk apa metode peta () digunakan?

Fungsi map() digunakan untuk mengulangi larik dan memanipulasi atau mengubah item data . Di React, fungsi map() paling umum digunakan untuk merender daftar data ke DOM.

Bagaimana cara mendapatkan nilai dari objek peta di JavaScript?

Metode get() mengembalikan elemen tertentu dari objek Map . Jika nilai yang terkait dengan kunci yang disediakan adalah sebuah objek, maka Anda akan mendapatkan referensi ke objek tersebut dan setiap perubahan yang dilakukan pada objek tersebut akan secara efektif memodifikasinya di dalam objek Peta.