Как работает функция map()
в Javascript выглядит следующим образом.
Притворись у вас есть текущий набор данных:
var dataSet = [{
humidity: 10.4,
temperature: 20.9,
},
{
humidity: 12.7,
temperature: 24.2,
}];
Во-первых, функция собирается перебрать каждой записи в наборе данных. Это создает временную сложность O(n)
. Если вы не в скорости или это просто проект для удовольствия, не волнуйтесь, но это просто что-то, что нужно учитывать. То, что выполняет функция, это возврат новой коллекции на основе действий, которые вы делали в своем наборе данных. В вашем случае вы хотите только поле влажности return
. Таким образом, вы делаете это:
var dataSet = ...; //See above
var humidityCollection = dataSet.map(function(element) {
return element['humidity']; //You can also write element.humidity
});
Подобно тому, как хэдз вверх, если вы используете ECMAScript 6 и выше, вы можете использовать функцию выше как лямбда-выражения. Он делает то же самое, но он просто сокращает код и делает его более читаемым.
var humidityCollection = dataSet.map((element) => {
return element['humidity'];
});
Это приведет к следующему набору данных:
[10.4, 12.7]
Источники, которые я использовал, и больше документации можно найти здесь: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map
Вы смотрели на '.map()' функциональность в Javascript? – DevNebulae
Да, @GamerNebulae, но я не уверен, как это работает, поэтому я не мог понять :( –