Javascript 循环分析分析工具库中的特定JS代码

Javascript 循环分析分析工具库中的特定JS代码,javascript,arrays,object,Javascript,Arrays,Object,问题是,我有以下代码要升级: ATTag.customVars.set({ site: { "1": tc_vars["env_template"], "2": tc_vars["product_category"], "3": tc_vars["product_name"], "4": tC.internalvars.s

问题是,我有以下代码要升级:

ATTag.customVars.set({
  site: {
    "1": tc_vars["env_template"],
    "2": tc_vars["product_category"],
    "3": tc_vars["product_name"],
    "4": tC.internalvars.service_category_2,
    "5": tc_vars["service_name"],
    "6": tc_vars["user_type"],
    "7": tc_vars["user_contract"],
    "8": tC.internalvars.ow_guarantee,
    "9": tc_vars["user_age"],
    "10": tc_vars["user_postalcode"],
    "11": tc_vars["user_city"],
    "12": tc_vars["user_department"],
    "13": tc_vars["user_recipient"],
    "14": tc_vars["user_section"],
    "15": tC.internalvars.responsive,
    "16": tc_vars["user_profil_type"],
    "17": tc_vars["accessibilite_faciliti"]
    },
})

问题是,我想在检查后构建这个“site”对象,只保留有值的键/值对,并删除没有值的键/值对

任务的一个目标是保持实际的排序

我见过使用“for in”循环的解决方案,但在我的例子中它不起作用

我是JS初学者,希望有人能帮我:)

问候,

Coki

以下是对我有效的方法(您对什么构成值和什么不构成值的检查可能会有所不同):

var siteObject={
“1”:“示例值”,
“2”:“示例值”,
“3”:“示例值”,
“4”:“示例值”,
“5”:“示例值”,
“6”:空
};
console.log(siteObject);
var siteObjectEntries=Object.entries(siteObject);
var newSiteObject={};
for(siteObjectEntries的常量[键,值]){
if(值!=null)
newSiteObject[键]=值;
}

console.log(newSiteObject)。它总是以某种随机顺序排列数据。只有数组具有序列顺序。无法保留对象中的顺序。我不知道顺序,但-
object。条目
可能会引起您的兴趣。首先循环遍历
Object.entries
,同时创建一个条目数组,然后使用