迭代状态对我不起作用

Iterating over states doesn't work for me

我有一个项目有多个 StateGroups:

MyObject.qml

    import QtQuick 2.0

    Item
    {
        id: root

        property alias myStates: myStateGroup.states

        // ..

        StateGroup
        {
            id: myStateGroup
            states:
            [
                State
                {
                    name: "first"
                },
                State
                {
                    name: "second"
                },
                State
                {
                    name: "third"
                }
            ]
        }
    }

我想遍历州名称:(在另一个文件中)

Component.onCompleted:
{
    for (var i in instance.myStates)
    {
        console.log(JSON.stringify(i))
        console.log(i.name)
        //....
    }
}

我得到的是

"0"
undefined
"1"
undefined
"2"
undefined

我想遍历各州的名称。我得到的是整数而不是 States,我做错了什么? 我知道我可以使用类似 C 的简单程序,但这看起来真的很糟糕。我想使用 for ... in 语法。

尝试以下操作:

Component.onCompleted:
{
    for (var i in instance.myStates)
    {
        console.log(instance.myStates[i].name)
    }
}

for..in 放入第 i 个数组项 属性 名称值。在这种情况下,它只是整数。