Javascript API帮助如何获取json中的最后一个选项卡
如何获取json代码的最后一个选项卡? 例: 我想得到的是当有人这样做的时候!水平 它表明 你的等级是“2” 我尝试使用Javascript API帮助如何获取json中的最后一个选项卡,javascript,node.js,json,api,discord.js,Javascript,Node.js,Json,Api,Discord.js,如何获取json代码的最后一个选项卡? 例: 我想得到的是当有人这样做的时候!水平 它表明 你的等级是“2” 我尝试使用.length 但是它的响应是未定义的。如果您试图获取JSON对象的长度,请使用.size而不是.length我认为它不是有效的JSON对象 { "claimed_levels": { "level_1", "level_2" } } 您使用“声明的_级别”作为对象的键,其值是一个对象,即: { "level_1", "level_2" }
.length
但是它的响应是未定义的。如果您试图获取JSON对象的长度,请使用
.size
而不是.length
我认为它不是有效的JSON对象
{
"claimed_levels": {
"level_1",
"level_2"
}
}
您使用“声明的_级别”作为对象的键,其值是一个对象,即:
{
"level_1",
"level_2"
}
但它不是一个正确的对象,您应该使用如下数组:
[
"level_1",
"level_2"
]
或键值对对象,如:
{
"level_1":"1",
"level_2":"2"
}
.length发送数组长度。几乎所有编程语言的索引都从0开始。然后[array.length-1]可能会起作用。这将起作用:
let input = {
"claimed_levels": {
"level_1": true,
"level_2": true
}
};
let cl = input.claimed_levels;
console.log(Object.keys(cl)[Object.keys(cl).length-1]);
你需要小心你所说的“最后一次”是什么意思。旧的JavaScript规范说,您永远不能指望对象键的顺序。虽然情况已经改变,但仍可能取决于实施情况。具体来说,您可能需要测试“level_10”是否会在“level_2”(按字母顺序)之前排序。我尝试过,但它仍然给我提供未定义的
声明的\u级别。size
您确定您正确引用了JSON对象吗?JSON对象是“声明的\u级别”:{“level_2”:true,“level_1”:true,“level_3”:true,“level_4”:true,“level_5”:true,“level_6”:true,“level_7”:true`我所做的是声明的\u级别。正如您所说,大小
,但仍然未定义请参阅提供的解决方案@prateek3636,它包含大量信息。我在哪里可以看到它?是的,它是{“level\u 1”:true,“level\u 2”:true}
但是有办法做到这一点吗?没有,因为.length
是数组/集合上的一个属性。在这种情况下,您可以做的最接近的事情是Object.keys({“level_1”:true,“level_2”:true})。length
告诉您JSON对象中的键数,在这种情况下是2。您必须使用Object.keys(对象
)Langthas@ PRATEK3636指出,您的JSON对象无效。<长度>代码>仅在JSON阵列/集合上可用。这里您既不使用.Hi,马赫迪!我想通知您,您需要考虑ARARY.FULL可以是0的事实。在这种情况下,数组长度1将是-1,这将导致错误。这也不是一个错误。arrayI假设我们将字符串转换为数组
let input = {
"claimed_levels": {
"level_1": true,
"level_2": true
}
};
let cl = input.claimed_levels;
console.log(Object.keys(cl)[Object.keys(cl).length-1]);