【发布时间】:2020-10-13 10:40:37
【问题描述】:
我有以下算法,我传入一个数组,我计算数组中每个数字的数量。然后我需要根据每个数字在数组中出现的次数返回一个结果。结果没有改变,所以我创建了一个查找表,可以在下面的scoreResults 对象中找到:
const scoreResults = {
1: {
1:100
3:1000
},
2: {
3: 200
},
3: {
3:300
},
4: {
3:400
},
5: {
3:500
1:50
},
6: {
3:600
},
}
// example dice [2,3,6,6,6]
function score(dice) {
[...]
return getResult(mapping); // mapping = {2:1, 3:1, 6:3}
}
function getResult(object){
for (const key in object){
[CODE I CANNOT FIGURE OUT]
}
}
对于我想不通的部分,我想做以下事情:
我现在想检查我的mapping 对象中的每个键。例如,让我们在我的 mapping 对象中获取键值对 6:3。如果键 6 在我的 scoreResults 对象(它是)中,请检查我的映射对象(即 3)中键 6 的 value 如果它是 3,则检查此处是否有键 3,在 6 内key:6: {3:600}, return 600 (value) 如果不是,则什么也不返回。
另一个例子:
对于我的mapping 对象中的键值对2:1 我想查看键2 是否在我的scoreResults 对象中(它是)检查我的映射对象中键2 的value 是什么是1,在我的scoreResults 中键2 的值中没有1,所以什么都不返回。
基本上我正在尝试解决这个算法:https://www.codewars.com/kata/5270d0d18625160ada0000e4/train/javascript
如果您需要进一步说明,请告诉我
【问题讨论】:
-
您刚刚描述了您的代码必须执行的操作。试着在你的句子后面写下代码。
If key 6 is in my scoreResults object--> 例如if(scoreResults[6]) -
你能接受一个答案吗?这些答案显然解决了这个问题。 stackoverflow.com/help/someone-answers
标签: javascript algorithm object