我正在尝试创建一些脚本,该脚本将使用一个对象,然后返回该对象中适用于两个级别键的所有键的列表。但是一旦键具有另一个对象或键是一个持有对象的数组,脚本将不再返回键。有没有一种简单的方法可以执行此操作,或者我将不得不手动遍历所有键并检查是否存在另一个对象?下面是一个示例对象。就我而言,我不在乎值,但我需要所有键:
object1 = {
DocId: "email_campaign::3ed76589-4063-49f6-a21e-9ca16981d102",
_id: "3ed76589-4063-49f6-a21e-9ca16981d102",
_type :"email_campaign",
end_date: "",
history: {
created_by: "",
created_on: "",
update_on: "",
updated_by: ""
},
librarys :[{id: 1, name : 'Lib 1'},{ id: 2, name: 'Lib 2'}],
metrics : {
first_email_sent: "",
last_email_send: "",
nbr_of_attachments_opened: 0,
nbr_of_bounces: 0,
nbr_of_email_opened: 0,
nbr_of_emails: 0,
nbr_of_unique_attachments_opened:0,
nbr_of_unique_email_opened: 0
},
start_date: "",
status: "Active",
subject: "Test 1 Subject",
summary: "",
tags: ['one', 'two'],
template_id: ""
};
答案 0 :(得分:0)
以下代码可能会对您有所帮助。这为您提供了一组键值。您可以根据用例进行调整。
cmake_minimum_required(VERSION 2.8.3)
project(quanergy_client_ros)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
## Find catkin macros and libraries
find_package(catkin REQUIRED COMPONENTS
roscpp
sensor_msgs
pcl_ros
)
答案 1 :(得分:0)
Object.keys()
吗?
const object1 = {
DocId: "email_campaign::3ed76589-4063-49f6-a21e-9ca16981d102",
_id: "3ed76589-4063-49f6-a21e-9ca16981d102",
_type :"email_campaign",
end_date: "",
history: {
created_by: "",
created_on: "",
update_on: "",
updated_by: ""
},
librarys : [{id: 1, name : 'Lib 1', id: 2, name: 'Lib 2'}],
metrics : {
first_email_sent: "",
last_email_send: "",
nbr_of_attachments_opened: 0,
nbr_of_bounces: 0,
nbr_of_email_opened: 0,
nbr_of_emails: 0,
nbr_of_unique_attachments_opened:0,
nbr_of_unique_email_opened: 0
},
start_date: "",
status: "Active",
subject: "Test 1 Subject",
summary: "",
tags: ['one', 'two'],
template_id: ""
};
console.log(Object.keys(object1));