React Native:键值数组还是哈希图?
Posted
技术标签:
【中文标题】React Native:键值数组还是哈希图?【英文标题】:React Native: Key Value array or hasmap? 【发布时间】:2019-06-01 07:32:56 【问题描述】:我想在我的反应原生应用程序中创建一个数组/集合/hasmap,其中一个键链接到一个值。因为我来自 php,所以我会给你一个简短的例子来说明我的意思。在 PHP 中,您只需创建一个带有键/值对的数组,如下所示:
$array = array(
41 => "bar",
65 => "foo",
);
这也是我想在我的 react native 地图中拥有的东西。链接到值的键。现在我正在这样做:
var votes = [];
responseJson.map((product, key) =>
var productID = product.id;
votes.push(
productID: product.votes
);
);
console.log("Votes:", votes);
但是,我最后得到的是:
0: productID: "0"
1: productID: "1"
2: productID: "2"
3: productID: "0"
4: productID: "8"
5: productID: "4"
首先,productID 变量打印为名称而不是值。第一个错误...其次,我想要这样的东西:
312: "0"
521: "1"
741: "2"
633: "0"
653: "8"
873: "4"
你们知道我该怎么做吗?
诚挚的问候,谢谢!
【问题讨论】:
【参考方案1】:您可以使用括号表示法。
例子:
var votes = [];
responseJson.map((product, key) =>
var productID = product.id;
votes.push(
[productID]: product.votes
);
);
console.log("Votes:", votes);
【讨论】:
是的,但是我在投票数组中仍然有数组。我想让它直接链接,而不需要在数组中包含数组! 您是否愿意将 responseJson 发送给我,以便我为您提供更好的解决方案,谢谢 看看下面的答案。这就是我一直在寻找的。不过谢谢!【参考方案2】:在 javascript 中,您可以使用对象作为存储键值对的方法。
如果你想使用变量定义键,你应该这样做
votes.push(
[productID]: product.votes
);
你可以通过做类似的事情来实现你想要的-
var votes = ;
responseJson.forEach((product, key) =>
var productID = product.id;
votes[productID] = product.votes
);
console.log("Votes:", votes);
希望对您有所帮助。
【讨论】:
谢谢,这正是我想要的!以上是关于React Native:键值数组还是哈希图?的主要内容,如果未能解决你的问题,请参考以下文章