gpt4 book ai didi

javascript - 在 switch case 中使用对象 - javascript

转载 作者:行者123 更新时间:2023-12-04 08:07:39 26 4
gpt4 key购买 nike

如何在 switch case 中加载对象?
例如,这是我的对象

{"1":"Restaurant","2":"Hotel","3":"Beauty shop","4":"Physiotherapist","5":"Dentist","6":"Bar","7":"Coffee shop"}
由于多语言,我无法为每种业务类型编写案例,我想将该 ID 与 BusinessType 反转,因为它是一个 CSV 导入器,客户端发送“餐厅”,如果客户端发送“餐厅”,我必须转换它对于“1”
我怎样才能让它成为一个开关盒?
我正在寻找它是相反的
例如
Restaurant = 1
不是
1 = Restaurant
这是一个例子,对象可能因语言而异
  switch (csvItem["Business Type"]){
case 'Restaurant': csvItem["Business Type"] = 1;
break;
对于 nina 解决方案,我遇到了这个问题
let businessTypes = document.getElementById('all-business-types').value;

const
data = businessTypes,
switched = Object.fromEntries(Object.entries(data).map(([k, v]) => [v, +k]));

console.log('switched ' + switched);
但在我的控制台中,结果是 switched [object Object]如果我使用 console.log('switched ' + JSON.stringify(switched));我得到这个结果
{"1":2,"2":19,"3":31,"4":49,"5":71,"6":85,"7":95,"{":0,"\"":110,":":97,"R":6,"e":104,"s":106,"t":81,"a":90,"u":38,"r":91,"n":77,",":93,"H":23,"o":108,"l":27,"B":89,"y":55," ":105,"h":107,"p":109,"P":53,"i":79,"D":75,"C":99,"f":102,"}":111}
我的浏览器日志中的业务类型
{"1":"Restaurant","2":"Hotel","3":"Beauty shop","4":"Physiotherapist","5":"Dentist","6":"Bar","7":"Coffee shop"}
谢谢阅读 :)

最佳答案

您可以切换条目并将键/字符串转换为数字。

const
json = '{"1":"Restaurant","2":"Hotel","3":"Beauty shop","4":"Physiotherapist","5":"Dentist","6":"Bar","7":"Coffee shop"}',
data = JSON.parse(json),
switched = Object.fromEntries(Object
.entries(data)
.map(([k, v]) => [v, +k])
);

console.log(switched);
.as-console-wrapper { max-height: 100% !important; top: 0; }

用法:
csvItem["Business Type"] = switched[csvItem["Business Type"]];

关于javascript - 在 switch case 中使用对象 - javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66143349/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com