javascript - 从 firebase 数组中选择 "column"

标签 javascript arrays angularjs firebase

我正在使用 AngularJS 和 Firebase 进行项目,一切正常。

firebase Data

但是我需要仅“提取”数组中的温度值,然后当然使用 JavaScript“提取”其他数组中的湿度值。

我一直在尝试使用文档,但找不到方法,firebase 上没有“选择来源”方法,您能帮助我吗?

谢谢!

最佳答案

map() 函数在 Javascript 中的工作原理如下。

假设您拥有当前数据集:

var dataSet = [{
    humidity: 10.4,
    temperature: 20.9,
},
{
    humidity: 12.7,
    temperature: 24.2,
}];

首先,该函数将循环遍历数据集中的每个条目。这会产生 O(n) 的时间复杂度。如果您不追求速度或者这只是一个好玩的项目,请不要担心,但这只是需要考虑的事情。然后该函数的作用是根据您对数据集执行的操作返回一个新集合。在您的情况下,您只想返回湿度场。所以,你这样做:

var dataSet = ...; //See above
var humidityCollection = dataSet.map(function(element) {
  return element['humidity']; //You can also write element.humidity
});

请注意,如果您使用 ECMAScript 6 及更高版本,则可以将上面的函数用作 lambda 表达式。它的作用相同,但它只是缩短了代码并使其更具可读性。

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

关于javascript - 从 firebase 数组中选择 "column",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37091288/

相关文章:

javascript - 如何在执行后杀死所有函数?

javascript - 如何获取 arcgis IdentyfyTask addCallback 的值?

javascript - 更改 div 数组中衣柜 div 的文本

c++ - 实现动态矩阵类时出错

javascript - array.push(object) 未在 javascript 中的循环末尾推送

javascript - 如何使 ng-repeat 与返回新对象的函数一起工作?

javascript - AngularJs 计数器可计数到特定目标数

javascript - 将javascript集成到wordpress主题中

c++ - 指向数组的指针是否指向数组的第一个元素

javascript - 在 AngularJS Controller 和服务之间共享资源