QML 中获取 JavaScript 对象中的最后一项
2021-03-30 本文已影响0人
赵者也
现假设我们有如下 JS 对象:
{ 'a' : 'apple', 'b' : 'banana', 'c' : 'carrot' }
如果我们事先不知道存在最后的数据对 “c”,除了遍历,有没有什么办法直接获取最后一项呢?
我们可以使用如下方案:
function lastElementValue(object) {
const keys = Object.keys(object);
return object[keys[keys.length - 1]];
}
下面是在 QML 中对这实现方案的测试:
import QtQuick 2.12
import QtQuick.Window 2.12
Window {
visible: true
width: 1000
height: 400
color: "white"
title: "Test JS"
function lastElementValue(object) {
const keys = Object.keys(object);
return object[keys[keys.length - 1]];
}
Component.onCompleted: {
const fruitObject = { 'a' : 'apple', 'b' : 'banana', 'c' : 'carrot' };
const fruitKeys = Object.keys(fruitObject);
console.log("ZDS==========", fruitKeys)
console.log("ZDS==========", lastElementValue(fruitObject))
}
}
测试输出:
qml: ZDS========== [a,b,c]
qml: ZDS========== carrot