前言是一道很简单根据不同的身份给予不同的折扣,我的想法比较复杂
1。建立对象,对象中有name对应身份,然后再在这个对象中创建一个discount对应折扣率
2.然后把这些对象push到一个数组。
3.传入身份,根据数组【下标】.name 判断是否相等,然后返回下标。取出下标.discount
我的代码如下
const discount = function(price, grade) { var dataDay = [{number:5,maybol:"小学生"}, {number:6,maybol:"初中生"}, {number:7,maybol:"高中生"}, {number:8,maybol:"大学生"}, {number:9,maybol:"研究生"}] for (let i = 0; i < dataDay.length; i++) { if (dataDay[i].maybol === grade) { log(dataDay[i].number * price) return dataDay[i].number * price * 0.1 } } return price }
我的思路顿挫点!定向思维key就是储存对象的名字!value就是单独的值!
其实key也可以用来储存字符串名字
修改后的代码
const discount = function(price, grade) { var dataDay = { ‘小学生‘: 0.5, ‘初中生‘: 0.6, ‘高中生‘: 0.7, ‘大学生‘: 0.8, ‘研究生‘: 0.9, } for (let i = 0; i < dataDay.length; i++) { if (dataDay.grade !== undefined ) { log(dataDay.grade* price) return dataDay.grade* price * 0.1 } } return price
原文:https://www.cnblogs.com/-constructor/p/11715069.html