Hướng dẫn how to map key and value in javascript - cách ánh xạ khóa và giá trị trong javascript

Nó không phải là bản đồ, nó là một đối tượng. (Mặc dù vậy, bạn có thể cân nhắc sử dụng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3.)

Show

Để có được thuộc tính của nó làm cặp khóa/giá trị, bạn có thể sử dụng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
4, sau đó bạn có thể áp dụng
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
5 để:

map = Object.entries(map).map(([key, value]) => key + "_" + value);

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
4 là tương đối mới, nhưng dễ dàng lấp đầy cho các môi trường cũ.

Ví dụ trực tiếp:


Hoặc, bằng cách sử dụng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3, bạn có thể sử dụng phương thức
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
8 tích hợp của nó, trả về một điều đáng tin cậy, chuyển nó vào
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
9 và sử dụng cuộc gọi lại ánh xạ của ____ 19:

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);

.

Trong cả hai trường hợp, tôi đang sử dụng phá hủy trong danh sách tham số của hàm mũi tên, nhận được một mảng ở định dạng

const wrongMap = new Map();
wrongMap['bla'] = 'blaa';
wrongMap['bla2'] = 'blaaa2';

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }
3.

Đối tượng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 giữ các cặp giá trị khóa và nhớ thứ tự chèn ban đầu của các khóa. Bất kỳ giá trị nào (cả đối tượng và giá trị nguyên thủy) có thể được sử dụng làm khóa hoặc giá trị.
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3
object holds key-value pairs and remembers the original insertion order of the keys. Any value (both objects and primitive values) may be used as either a key or a value.

Thử nó

Sự mô tả

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 Đối tượng là bộ sưu tập của các cặp giá trị khóa. Một chìa khóa trong
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 chỉ có thể xảy ra một lần; Nó là duy nhất trong bộ sưu tập của ____ 13. Một đối tượng
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 được lặp lại bởi các cặp giá trị khóa-vòng
const wrongMap = new Map();
wrongMap['bla'] = 'blaa';
wrongMap['bla2'] = 'blaaa2';

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }
9 trả về một mảng 2 thành viên
const wrongMap = new Map();
wrongMap['bla'] = 'blaa';
wrongMap['bla2'] = 'blaaa2';

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }
3 cho mỗi lần lặp. Lặp lại xảy ra theo thứ tự chèn, tương ứng với thứ tự trong đó mỗi cặp giá trị khóa lần đầu tiên được chèn vào bản đồ bằng phương thức
wrongMap.has('bla')    // false
wrongMap.delete('bla') // false
console.log(wrongMap)  // Map { bla: 'blaa', bla2: 'blaaa2' }
1 (nghĩa là không có khóa có cùng giá trị trong bản đồ khi
wrongMap.has('bla')    // false
wrongMap.delete('bla') // false
console.log(wrongMap)  // Map { bla: 'blaa', bla2: 'blaaa2' }
1 được gọi ).may only occur once; it is unique in the
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3's collection. A
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 object is iterated by key-value pairs — a
const wrongMap = new Map();
wrongMap['bla'] = 'blaa';
wrongMap['bla2'] = 'blaaa2';

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }
9 loop returns a 2-member array of
const wrongMap = new Map();
wrongMap['bla'] = 'blaa';
wrongMap['bla2'] = 'blaaa2';

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }
3 for each iteration. Iteration happens in insertion order, which corresponds to the order in which each key-value pair was first inserted into the map by the
wrongMap.has('bla')    // false
wrongMap.delete('bla') // false
console.log(wrongMap)  // Map { bla: 'blaa', bla2: 'blaaa2' }
1 method (that is, there wasn't a key with the same value already in the map when
wrongMap.has('bla')    // false
wrongMap.delete('bla') // false
console.log(wrongMap)  // Map { bla: 'blaa', bla2: 'blaaa2' }
1 was called).

Đặc điểm kỹ thuật yêu cầu các bản đồ phải được thực hiện "Trung bình, cung cấp thời gian truy cập là cao cấp về số lượng các phần tử trong bộ sưu tập". Do đó, nó có thể được biểu diễn bên trong dưới dạng bảng băm (với o (1) tra cứu), một cây tìm kiếm (với o (log (n)) tra cứu) hoặc bất kỳ cấu trúc dữ liệu nào khác, miễn là độ phức tạp tốt hơn o (N).

Bình đẳng chính

Bình đẳng giá trị dựa trên thuật toán sikevaluezero. .

Đối tượng so với bản đồ

wrongMap.has('bla')    // false
wrongMap.delete('bla') // false
console.log(wrongMap)  // Map { bla: 'blaa', bla2: 'blaaa2' }
9 tương tự như ____ 13 13, cả hai cho phép bạn đặt các khóa thành các giá trị, truy xuất các giá trị đó, xóa các khóa và phát hiện xem có gì đó được lưu trữ ở một phím không. Vì lý do này (và vì không có lựa chọn thay thế tích hợp),
wrongMap.has('bla')    // false
wrongMap.delete('bla') // false
console.log(wrongMap)  // Map { bla: 'blaa', bla2: 'blaaa2' }
9 đã được sử dụng dưới dạng
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 trong lịch sử.

Tuy nhiên, có những khác biệt quan trọng làm cho

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 thích hợp hơn trong một số trường hợp:

Đặt thuộc tính đối tượng

Cài đặt các thuộc tính đối tượng cũng hoạt động cho các đối tượng MAP và có thể gây ra sự nhầm lẫn đáng kể.

Do đó, điều này dường như hoạt động theo một cách:

const wrongMap = new Map();
wrongMap['bla'] = 'blaa';
wrongMap['bla2'] = 'blaaa2';

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }

Nhưng cách đặt một thuộc tính không tương tác với cấu trúc dữ liệu bản đồ. Nó sử dụng tính năng của đối tượng chung. Giá trị của 'BLA' không được lưu trữ trong bản đồ cho các truy vấn. Các hoạt động khác trên dữ liệu không thành công:

wrongMap.has('bla')    // false
wrongMap.delete('bla') // false
console.log(wrongMap)  // Map { bla: 'blaa', bla2: 'blaaa2' }

Việc sử dụng chính xác để lưu trữ dữ liệu trong bản đồ là thông qua phương thức

const contacts = new Map()
contacts.set('Jessie', {phone: "213-555-1234", address: "123 N 1st Ave"})
contacts.has('Jessie') // true
contacts.get('Hilary') // undefined
contacts.set('Hilary', {phone: "617-555-4321", address: "321 S 2nd St"})
contacts.get('Jessie') // {phone: "213-555-1234", address: "123 N 1st Ave"}
contacts.delete('Raymond') // false
contacts.delete('Jessie') // true
console.log(contacts.size) // 1
4.

const contacts = new Map()
contacts.set('Jessie', {phone: "213-555-1234", address: "123 N 1st Ave"})
contacts.has('Jessie') // true
contacts.get('Hilary') // undefined
contacts.set('Hilary', {phone: "617-555-4321", address: "321 S 2nd St"})
contacts.get('Jessie') // {phone: "213-555-1234", address: "123 N 1st Ave"}
contacts.delete('Raymond') // false
contacts.delete('Jessie') // true
console.log(contacts.size) // 1

Người xây dựng

const contacts = new Map()
contacts.set('Jessie', {phone: "213-555-1234", address: "123 N 1st Ave"})
contacts.has('Jessie') // true
contacts.get('Hilary') // undefined
contacts.set('Hilary', {phone: "617-555-4321", address: "321 S 2nd St"})
contacts.get('Jessie') // {phone: "213-555-1234", address: "123 N 1st Ave"}
contacts.delete('Raymond') // false
contacts.delete('Jessie') // true
console.log(contacts.size) // 1
5

Tạo một đối tượng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 mới.

Tính chất tĩnh

const contacts = new Map()
contacts.set('Jessie', {phone: "213-555-1234", address: "123 N 1st Ave"})
contacts.has('Jessie') // true
contacts.get('Hilary') // undefined
contacts.set('Hilary', {phone: "617-555-4321", address: "321 S 2nd St"})
contacts.get('Jessie') // {phone: "213-555-1234", address: "123 N 1st Ave"}
contacts.delete('Raymond') // false
contacts.delete('Jessie') // true
console.log(contacts.size) // 1
7

Hàm tạo thành được sử dụng để tạo các đối tượng dẫn xuất.

Thuộc tính thể hiện

const contacts = new Map()
contacts.set('Jessie', {phone: "213-555-1234", address: "123 N 1st Ave"})
contacts.has('Jessie') // true
contacts.get('Hilary') // undefined
contacts.set('Hilary', {phone: "617-555-4321", address: "321 S 2nd St"})
contacts.get('Jessie') // {phone: "213-555-1234", address: "123 N 1st Ave"}
contacts.delete('Raymond') // false
contacts.delete('Jessie') // true
console.log(contacts.size) // 1
8

Trả về số cặp khóa/giá trị trong đối tượng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3.

Phương pháp thể hiện

const myMap = new Map();

const keyString = 'a string';
const keyObj = {};
const keyFunc = function() {};

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, 'value associated with keyObj');
myMap.set(keyFunc, 'value associated with keyFunc');

console.log(myMap.size); // 3

// getting the values
console.log(myMap.get(keyString)); // "value associated with 'a string'"
console.log(myMap.get(keyObj)); // "value associated with keyObj"
console.log(myMap.get(keyFunc)); // "value associated with keyFunc"

console.log(myMap.get('a string')); // "value associated with 'a string'", because keyString === 'a string'
console.log(myMap.get({})); // undefined, because keyObj !== {}
console.log(myMap.get(function() {})); // undefined, because keyFunc !== function () {}
0

Xóa tất cả các cặp giá trị khóa khỏi đối tượng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3.

const myMap = new Map();

const keyString = 'a string';
const keyObj = {};
const keyFunc = function() {};

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, 'value associated with keyObj');
myMap.set(keyFunc, 'value associated with keyFunc');

console.log(myMap.size); // 3

// getting the values
console.log(myMap.get(keyString)); // "value associated with 'a string'"
console.log(myMap.get(keyObj)); // "value associated with keyObj"
console.log(myMap.get(keyFunc)); // "value associated with keyFunc"

console.log(myMap.get('a string')); // "value associated with 'a string'", because keyString === 'a string'
console.log(myMap.get({})); // undefined, because keyObj !== {}
console.log(myMap.get(function() {})); // undefined, because keyFunc !== function () {}
2

Trả về

const myMap = new Map();

const keyString = 'a string';
const keyObj = {};
const keyFunc = function() {};

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, 'value associated with keyObj');
myMap.set(keyFunc, 'value associated with keyFunc');

console.log(myMap.size); // 3

// getting the values
console.log(myMap.get(keyString)); // "value associated with 'a string'"
console.log(myMap.get(keyObj)); // "value associated with keyObj"
console.log(myMap.get(keyFunc)); // "value associated with keyFunc"

console.log(myMap.get('a string')); // "value associated with 'a string'", because keyString === 'a string'
console.log(myMap.get({})); // undefined, because keyObj !== {}
console.log(myMap.get(function() {})); // undefined, because keyFunc !== function () {}
3 nếu một phần tử trong đối tượng
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 tồn tại và đã bị xóa, hoặc
const myMap = new Map();

const keyString = 'a string';
const keyObj = {};
const keyFunc = function() {};

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, 'value associated with keyObj');
myMap.set(keyFunc, 'value associated with keyFunc');

console.log(myMap.size); // 3

// getting the values
console.log(myMap.get(keyString)); // "value associated with 'a string'"
console.log(myMap.get(keyObj)); // "value associated with keyObj"
console.log(myMap.get(keyFunc)); // "value associated with keyFunc"

console.log(myMap.get('a string')); // "value associated with 'a string'", because keyString === 'a string'
console.log(myMap.get({})); // undefined, because keyObj !== {}
console.log(myMap.get(function() {})); // undefined, because keyFunc !== function () {}
5 nếu phần tử không tồn tại.
const myMap = new Map();

const keyString = 'a string';
const keyObj = {};
const keyFunc = function() {};

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, 'value associated with keyObj');
myMap.set(keyFunc, 'value associated with keyFunc');

console.log(myMap.size); // 3

// getting the values
console.log(myMap.get(keyString)); // "value associated with 'a string'"
console.log(myMap.get(keyObj)); // "value associated with keyObj"
console.log(myMap.get(keyFunc)); // "value associated with keyFunc"

console.log(myMap.get('a string')); // "value associated with 'a string'", because keyString === 'a string'
console.log(myMap.get({})); // undefined, because keyObj !== {}
console.log(myMap.get(function() {})); // undefined, because keyFunc !== function () {}
6 sẽ trở lại
const myMap = new Map();

const keyString = 'a string';
const keyObj = {};
const keyFunc = function() {};

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, 'value associated with keyObj');
myMap.set(keyFunc, 'value associated with keyFunc');

console.log(myMap.size); // 3

// getting the values
console.log(myMap.get(keyString)); // "value associated with 'a string'"
console.log(myMap.get(keyObj)); // "value associated with keyObj"
console.log(myMap.get(keyFunc)); // "value associated with keyFunc"

console.log(myMap.get('a string')); // "value associated with 'a string'", because keyString === 'a string'
console.log(myMap.get({})); // undefined, because keyObj !== {}
console.log(myMap.get(function() {})); // undefined, because keyFunc !== function () {}
5 sau đó.

const myMap = new Map();

const keyString = 'a string';
const keyObj = {};
const keyFunc = function() {};

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, 'value associated with keyObj');
myMap.set(keyFunc, 'value associated with keyFunc');

console.log(myMap.size); // 3

// getting the values
console.log(myMap.get(keyString)); // "value associated with 'a string'"
console.log(myMap.get(keyObj)); // "value associated with keyObj"
console.log(myMap.get(keyFunc)); // "value associated with keyFunc"

console.log(myMap.get('a string')); // "value associated with 'a string'", because keyString === 'a string'
console.log(myMap.get({})); // undefined, because keyObj !== {}
console.log(myMap.get(function() {})); // undefined, because keyFunc !== function () {}
8

Trả về giá trị được liên kết với khóa được truyền hoặc

const myMap = new Map();

const keyString = 'a string';
const keyObj = {};
const keyFunc = function() {};

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, 'value associated with keyObj');
myMap.set(keyFunc, 'value associated with keyFunc');

console.log(myMap.size); // 3

// getting the values
console.log(myMap.get(keyString)); // "value associated with 'a string'"
console.log(myMap.get(keyObj)); // "value associated with keyObj"
console.log(myMap.get(keyFunc)); // "value associated with keyFunc"

console.log(myMap.get('a string')); // "value associated with 'a string'", because keyString === 'a string'
console.log(myMap.get({})); // undefined, because keyObj !== {}
console.log(myMap.get(function() {})); // undefined, because keyFunc !== function () {}
9 nếu không có.

const myMap = new Map();
myMap.set(NaN, 'not a number');

myMap.get(NaN);
// "not a number"

const otherNaN = Number('foo');
myMap.get(otherNaN);
// "not a number"
0

Trả về một boolean cho biết liệu một giá trị có được liên kết với khóa được truyền trong đối tượng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 hay không.

const myMap = new Map();
myMap.set(NaN, 'not a number');

myMap.get(NaN);
// "not a number"

const otherNaN = Number('foo');
myMap.get(otherNaN);
// "not a number"
2

Đặt giá trị cho khóa được truyền trong đối tượng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3. Trả về đối tượng
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3.

const myMap = new Map();
myMap.set(NaN, 'not a number');

myMap.get(NaN);
// "not a number"

const otherNaN = Number('foo');
myMap.get(otherNaN);
// "not a number"
5

Trả về một đối tượng lặp mới có chứa một mảng hai thành viên là

const wrongMap = new Map();
wrongMap['bla'] = 'blaa';
wrongMap['bla2'] = 'blaaa2';

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }
3 cho mỗi phần tử trong đối tượng
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 theo thứ tự chèn.

const myMap = new Map();
myMap.set(NaN, 'not a number');

myMap.get(NaN);
// "not a number"

const otherNaN = Number('foo');
myMap.get(otherNaN);
// "not a number"
8

Trả về một đối tượng lặp mới có chứa các phím cho từng phần tử trong đối tượng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 theo thứ tự chèn.

const myMap = new Map();
myMap.set(0, 'zero');
myMap.set(1, 'one');

for (const [key, value] of myMap) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one

for (const key of myMap.keys()) {
  console.log(key);
}
// 0
// 1

for (const value of myMap.values()) {
  console.log(value);
}
// zero
// one

for (const [key, value] of myMap.entries()) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one
0

Trả về một đối tượng lặp mới có chứa các giá trị cho từng phần tử trong đối tượng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 theo thứ tự chèn.

const myMap = new Map();
myMap.set(0, 'zero');
myMap.set(1, 'one');

for (const [key, value] of myMap) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one

for (const key of myMap.keys()) {
  console.log(key);
}
// 0
// 1

for (const value of myMap.values()) {
  console.log(value);
}
// zero
// one

for (const [key, value] of myMap.entries()) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one
2

Trả về một đối tượng lặp mới có chứa một mảng hai thành viên là

const wrongMap = new Map();
wrongMap['bla'] = 'blaa';
wrongMap['bla2'] = 'blaaa2';

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }
3 cho mỗi phần tử trong đối tượng
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 theo thứ tự chèn.

const myMap = new Map();
myMap.set(0, 'zero');
myMap.set(1, 'one');

for (const [key, value] of myMap) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one

for (const key of myMap.keys()) {
  console.log(key);
}
// 0
// 1

for (const value of myMap.values()) {
  console.log(value);
}
// zero
// one

for (const [key, value] of myMap.entries()) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one
5

Trả về một đối tượng lặp mới có chứa các phím cho từng phần tử trong đối tượng

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 theo thứ tự chèn.

Trả về một đối tượng lặp mới có chứa các giá trị cho từng phần tử trong đối tượng var map = new Map([ ["a", 1], ["b", 2], ["c", 3] ]); map = Array.from(map.entries(), ([key, value]) => key + "_" + value); console.log(map);3 theo thứ tự chèn.

Gọi const myMap = new Map(); myMap.set(0, 'zero'); myMap.set(1, 'one'); for (const [key, value] of myMap) { console.log(`${key} = ${value}`); } // 0 = zero // 1 = one for (const key of myMap.keys()) { console.log(key); } // 0 // 1 for (const value of myMap.values()) { console.log(value); } // zero // one for (const [key, value] of myMap.entries()) { console.log(`${key} = ${value}`); } // 0 = zero // 1 = one 6 một lần cho mỗi cặp giá trị khóa có trong đối tượng var map = new Map([ ["a", 1], ["b", 2], ["c", 3] ]); map = Array.from(map.entries(), ([key, value]) => key + "_" + value); console.log(map);3, theo thứ tự chèn. Nếu tham số const myMap = new Map(); myMap.set(0, 'zero'); myMap.set(1, 'one'); for (const [key, value] of myMap) { console.log(`${key} = ${value}`); } // 0 = zero // 1 = one for (const key of myMap.keys()) { console.log(key); } // 0 // 1 for (const value of myMap.values()) { console.log(value); } // zero // one for (const [key, value] of myMap.entries()) { console.log(`${key} = ${value}`); } // 0 = zero // 1 = one 8 được cung cấp cho const myMap = new Map(); myMap.set(0, 'zero'); myMap.set(1, 'one'); for (const [key, value] of myMap) { console.log(`${key} = ${value}`); } // 0 = zero // 1 = one for (const key of myMap.keys()) { console.log(key); } // 0 // 1 for (const value of myMap.values()) { console.log(value); } // zero // one for (const [key, value] of myMap.entries()) { console.log(`${key} = ${value}`); } // 0 = zero // 1 = one 9, nó sẽ được sử dụng làm giá trị myMap.forEach((value, key) => { console.log(`${key} = ${value}`); }); // 0 = zero // 1 = one 0 cho mỗi cuộc gọi lại.

const myMap = new Map();

const keyString = 'a string';
const keyObj = {};
const keyFunc = function() {};

// setting the values
myMap.set(keyString, "value associated with 'a string'");
myMap.set(keyObj, 'value associated with keyObj');
myMap.set(keyFunc, 'value associated with keyFunc');

console.log(myMap.size); // 3

// getting the values
console.log(myMap.get(keyString)); // "value associated with 'a string'"
console.log(myMap.get(keyObj)); // "value associated with keyObj"
console.log(myMap.get(keyFunc)); // "value associated with keyFunc"

console.log(myMap.get('a string')); // "value associated with 'a string'", because keyString === 'a string'
console.log(myMap.get({})); // undefined, because keyObj !== {}
console.log(myMap.get(function() {})); // undefined, because keyFunc !== function () {}

Ví dụ

Sử dụng đối tượng bản đồ

const myMap = new Map();
myMap.set(NaN, 'not a number');

myMap.get(NaN);
// "not a number"

const otherNaN = Number('foo');
myMap.get(otherNaN);
// "not a number"

Sử dụng NaN làm khóa bản đồ

Bản đồ có thể được lặp lại bằng cách sử dụng vòng lặp

const wrongMap = new Map();
wrongMap['bla'] = 'blaa';
wrongMap['bla2'] = 'blaaa2';

console.log(wrongMap); // Map { bla: 'blaa', bla2: 'blaaa2' }
9:

const myMap = new Map();
myMap.set(0, 'zero');
myMap.set(1, 'one');

for (const [key, value] of myMap) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one

for (const key of myMap.keys()) {
  console.log(key);
}
// 0
// 1

for (const value of myMap.values()) {
  console.log(value);
}
// zero
// one

for (const [key, value] of myMap.entries()) {
  console.log(`${key} = ${value}`);
}
// 0 = zero
// 1 = one

Lặp lại bản đồ với foreach ()

Bản đồ có thể được lặp lại bằng phương pháp

myMap.forEach((value, key) => {
  console.log(`${key} = ${value}`);
});
// 0 = zero
// 1 = one
6:

myMap.forEach((value, key) => {
  console.log(`${key} = ${value}`);
});
// 0 = zero
// 1 = one

Quan hệ với các đối tượng mảng

const kvArray = [['key1', 'value1'], ['key2', 'value2']];

// Use the regular Map constructor to transform a 2D key-value Array into a map
const myMap = new Map(kvArray);

console.log(myMap.get('key1')); // "value1"

// Use Array.from() to transform a map into a 2D key-value Array
console.log(Array.from(myMap)); // Will show you exactly the same Array as kvArray

// A succinct way to do the same, using the spread syntax
console.log([...myMap]);

// Or use the keys() or values() iterators, and convert them to an array
console.log(Array.from(myMap.keys())); // ["key1", "key2"]

Bản đồ nhân bản và hợp nhất

Giống như

myMap.forEach((value, key) => {
  console.log(`${key} = ${value}`);
});
// 0 = zero
// 1 = one
7S,
var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
3 có thể được nhân bản:

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
0

Lưu ý: Hãy nhớ rằng chính dữ liệu không được nhân bản. Keep in mind that the data itself is not cloned.

Bản đồ có thể được hợp nhất, duy trì tính độc đáo quan trọng:

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
1

Bản đồ cũng có thể được hợp nhất với các mảng:

var map = new Map([
  ["a", 1],
  ["b", 2],
  ["c", 3]
]);
map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
console.log(map);
2

Thông số kỹ thuật

Sự chỉ rõ
Đặc tả ngôn ngữ Ecmascript # Sec-Map-Enjects
# sec-map-objects

Tính tương thích của trình duyệt web

Bảng BCD chỉ tải trong trình duyệt

Xem thêm

  • Polyfill của
    var map = new Map([
      ["a", 1],
      ["b", 2],
      ["c", 3]
    ]);
    map = Array.from(map.entries(), ([key, value]) => key + "_" + value);
    console.log(map);
    3 có sẵn trong
    const kvArray = [['key1', 'value1'], ['key2', 'value2']];
    
    // Use the regular Map constructor to transform a 2D key-value Array into a map
    const myMap = new Map(kvArray);
    
    console.log(myMap.get('key1')); // "value1"
    
    // Use Array.from() to transform a map into a 2D key-value Array
    console.log(Array.from(myMap)); // Will show you exactly the same Array as kvArray
    
    // A succinct way to do the same, using the spread syntax
    console.log([...myMap]);
    
    // Or use the keys() or values() iterators, and convert them to an array
    console.log(Array.from(myMap.keys())); // ["key1", "key2"]
    
    
    0
  • const kvArray = [['key1', 'value1'], ['key2', 'value2']];
    
    // Use the regular Map constructor to transform a 2D key-value Array into a map
    const myMap = new Map(kvArray);
    
    console.log(myMap.get('key1')); // "value1"
    
    // Use Array.from() to transform a map into a 2D key-value Array
    console.log(Array.from(myMap)); // Will show you exactly the same Array as kvArray
    
    // A succinct way to do the same, using the spread syntax
    console.log([...myMap]);
    
    // Or use the keys() or values() iterators, and convert them to an array
    console.log(Array.from(myMap.keys())); // ["key1", "key2"]
    
    
    1
  • const kvArray = [['key1', 'value1'], ['key2', 'value2']];
    
    // Use the regular Map constructor to transform a 2D key-value Array into a map
    const myMap = new Map(kvArray);
    
    console.log(myMap.get('key1')); // "value1"
    
    // Use Array.from() to transform a map into a 2D key-value Array
    console.log(Array.from(myMap)); // Will show you exactly the same Array as kvArray
    
    // A succinct way to do the same, using the spread syntax
    console.log([...myMap]);
    
    // Or use the keys() or values() iterators, and convert them to an array
    console.log(Array.from(myMap.keys())); // ["key1", "key2"]
    
    
    2
  • const kvArray = [['key1', 'value1'], ['key2', 'value2']];
    
    // Use the regular Map constructor to transform a 2D key-value Array into a map
    const myMap = new Map(kvArray);
    
    console.log(myMap.get('key1')); // "value1"
    
    // Use Array.from() to transform a map into a 2D key-value Array
    console.log(Array.from(myMap)); // Will show you exactly the same Array as kvArray
    
    // A succinct way to do the same, using the spread syntax
    console.log([...myMap]);
    
    // Or use the keys() or values() iterators, and convert them to an array
    console.log(Array.from(myMap.keys())); // ["key1", "key2"]
    
    
    3

Làm thế nào để bạn ánh xạ một khóa

Sử dụng phương thức SET () để thêm một cặp khóa/giá trị vào bản đồ, ví dụ: bản đồ. Đặt ('MyKey', 'MyValue'). Phương thức SET () thêm hoặc cập nhật phần tử với khóa và giá trị được cung cấp và trả về đối tượng bản đồ. , e.g. map. set('myKey', 'myValue') . The set() method adds or updates the element with the provided key and value and returns the Map object.

Làm thế nào để bạn sử dụng khóa bản đồ

Các khóa của bản đồ có thể là bất kỳ giá trị nào (bao gồm các hàm, đối tượng hoặc bất kỳ nguyên thủy nào).Các phím của một đối tượng phải là một chuỗi hoặc một ký hiệu.Các khóa trong bản đồ được đặt hàng theo cách đơn giản, đơn giản: một đối tượng bản đồ lặp lại các mục, khóa và giá trị theo thứ tự chèn nhập.A Map object iterates entries, keys, and values in the order of entry insertion.

Khóa và giá trị trong JavaScript là gì?

Một đối tượng chứa các thuộc tính hoặc các cặp giá trị khóa.Đối tượng bàn ở trên có bốn thuộc tính.Mỗi thuộc tính có một tên, còn được gọi là khóa và giá trị tương ứng.Chẳng hạn, chiều cao chính có giá trị "4 feet".Cùng nhau, khóa và giá trị tạo thành một thuộc tính duy nhất.. The desk object above has four properties. Each property has a name, which is also called a key, and a corresponding value. For instance, the key height has the value "4 feet" . Together, the key and value make up a single property.

Làm thế nào để bạn ánh xạ một phần tử trong JavaScript?

Phương thức cú pháp cho phương thức bản đồ () như sau: mảng.map (hàm (phần tử, chỉ mục, mảng) {}, this);Hàm gọi lại () được gọi trên mỗi phần tử mảng và phương thức bản đồ () luôn truyền phần tử hiện tại, chỉ mục của phần tử hiện tại và toàn bộ đối tượng mảng cho nó.arr. map(function(element, index, array){ }, this); The callback function() is called on each array element, and the map() method always passes the current element , the index of the current element, and the whole array object to it.