【问题标题】:Javascript (Vuejs) object literal, loopingJavascript (Vuejs) 对象文字,循环
【发布时间】:2016-03-29 16:19:13
【问题描述】:

我在 vuejs 中有一个对象

 data: {
    food: {
              monday: {
              pizza:1,
              chips:2,
              pie:0,      
          },
             tuesday: {
              pizza:1,
              chips:2,
              pie:1,       
              }
           }
}

我可以通过

专门访问该值

this.food.monday.pizza

但是我如何计算星期一吃的食物数量(总共 3 个)?

【问题讨论】:

    标签: javascript vue.js object-literal


    【解决方案1】:

    ES6 中,您可以按照以下方式进行操作。

    const objectValueSum = (obj) =>
        Object.keys(obj)
            .map(food => obj[food])
            .reduce((a, b) => a + b);
    
    const sum = objectValueSum(this.data.food.monday);
    

    不要忘记使用BabelTraceur 转译为 ES5。

    【讨论】:

    • Objects.keys、map 和 reduce 是 ES5 中的函数,您的代码中只有箭头符号来自 ES6
    猜你喜欢
    • 2016-10-11
    • 2017-01-25
    • 2018-10-22
    • 1970-01-01
    • 2020-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多