javascript为什么word返回数组,而word [0]未定义javascript

问题描述

我正在尝试使我的网站双语。 所以我想迭代我的JS对象翻译。我可以使用以下代码进行迭代:

for (var word of translation) {
    console.log(word);
}   

但是我得到了:

从我使用此代码的那一刻起我就不确定

for (var word of translation) {
    console.log(word[0]);
}   

这是我的对象模型

    translation = [ 
      { English : [ ["English","engels"],["lblEng",""] ]},{dutch : [["dutch","nederlands"],["lblNl",""]]},{ second : [["second","seconde"],["sec",{minut : [["minut","minut"],["min",{ hour : [["hour","uur"],["h",{ day :[ ["day","dag"],["d",{ to : [["to","naar"],["to",{ from : [["from","van"],["from",""]]}
    ]

解决方法

for...of遍历数组中的值,即对象。例如,第一次迭代word = { English : [ ["English","engels"],["lblEng",""] ]}

因此,当您执行word[0]的{​​{1}}时,该undefined对象中没有0属性

,
[
        {
            "range_name": "september","range_dates": [
                {
                    "value": "2020-09-01T00:00:00.000Z","inclusive": true
                },{
                    "value": "2020-10-01T00:00:00.000Z","inclusive": false
                }
            ],"total_amount": "253050"
        },{
            "range_name": "august","range_dates": [
                {
                    "value": "2020-08-01T00:00:00.000Z",{
                    "value": "2020-09-01T00:00:00.000Z","total_amount": "55200"
        },...
]

变量for (var word of translation) { console.log(word[0]); } 将分配一个对象,如下所示:

word

因此,{ English : [ ["English",""] ]} 返回word[0],因为对象没有属性undefined

可能,您真正想要做的是:

0

,

感谢您的反应/回答...

确实可以帮助我前进,如果花了一段时间做出回应,因为我正在对我的网络应用程序进行分区。