遍历Javascript中的对象值

时间:2019-12-30 16:31:08

标签: javascript arrays

我有3个对象。

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="utf-8"/>

<xsl:template match="/list">
    <div>
        <xsl:apply-templates/>
    </div>
</xsl:template>

<xsl:template match="item">
    <div>
        <xsl:number/>
        <xsl:value-of select="."/>
    </div>
</xsl:template>

<xsl:template match="or-item">
    <div style="padding-left: 10px">
        <xsl:number level="any" from="item" format="a) "/>
        <xsl:value-of select="."/>
    </div>
</xsl:template>

</xsl:stylesheet>

我正在尝试将数量值加起来等于13。我似乎无法掌握如何实际获得这些值。当我尝试下面的代码时,它只是给我对象本身而不是它们的值。

obj([]);
obj([{name:'Jeans', quantity:5}]);
obj([{name:'Jeans-M-B', quantity:1},{name:'Jeans-S-R', quantity:7}]);

1 个答案:

答案 0 :(得分:0)

您可以将对象的数量减少为它们的总和:

function quantities(obj) {
  return obj.reduce(function(acc, curr) {
    return acc + curr["quantity"]
  }, 0)
}

t = [{name:'Jeans-M-B', quantity:1},{name:'Jeans-S-R', quantity:7}];
console.log(quantities(t))