javascript - 时钟角度问题 --> 如何在函数外部调用对象并将对象值赋给函数内部的变量
问题描述
我有以下问题,我想使用特定方法解决它:
// 编写一个接受两个数字的函数,一个代表时钟上的时针,另一个代表分针。确定时钟指针的角度。如果大于 180°,则返回相反的角度。
我在函数之外创建了一个对象。我希望我的函数能够访问键值对。
let clock = {
// min bucket: // on clock
0: 12
5: 1
10: 2
15: 3
20: 4
25: 5
30: 6
35: 7
40: 8
45: 9
50: 10
55: 11
60: 12
}
这是我的功能骨架。我无法修改clockAngle 中的参数。
function clockAngle (hour, minute) {
}
clockAngle(1, 15)
我的问题是我不知道(使用上述功能)如何执行以下操作:
一种。获取分钟输入参数 (15) 并使用时钟对象设置一个新变量(假设为 clock_num),该变量等于与键 15 关联的值,在我们的例子中是 3。
我该怎么做以上?
解决方案
假设在与(或其中的一个范围)clockAngle
相同的范围clock
内声明,然后clockAngle
关闭 clock
,因此clock
在范围内。您可以使用带括号的属性访问器来访问以下条目clock
:
let clock_num = clock[minute];
现场示例:
let clock = {
// min bucket: // on clock
0: 12,
5: 1,
10: 2,
15: 3,
20: 4,
25: 5,
30: 6,
35: 7,
40: 8,
45: 9,
50: 10,
55: 11,
60: 12
}
function clockAngle (hour, minute) {
let clock_num = clock[minute];
console.log(`clock_num for minute value ${minute} is ${clock_num}`);
}
clockAngle(1, 15);
有关此问题答案中的闭包的更多信息。
更多关于这个问题的答案中的变量属性访问。
推荐阅读
- node.js - 使用 WSL 在 VSCode 中使用 nodemon + babel-node 进行调试
- javascript - 登录后需要相互等待的多个 axios 调用,然后将用户重定向到 Vue.js 上的仪表板 [时间问题]
- javascript - 在 onsubmit 函数完成之前如何防止表单提交?
- sql - 查询以查找具有指定月份的帐户
- reactjs - Img 的来源应该是动态的
- php - 循环进入 CSV 文件并从头文件 PHP 中获取特定值
- python - 如何将 2D 数组“切片”成 3D 数组
- python - 在 Pandas 数据框中使用 groupby 和 shift 操作计算条件概率
- angular - Angular:如何在不更改模板路由的情况下更新 queryParams
- html - Angular 6中不相关的模板解析错误