Javascript Object取值後,無法消除屬性標籤

JPAG 2020-05-01 08:30:49
程式码
var input = {
"data": {
"A1": {
"dep_name": "资讯工程",
"dept_no": "A1",
},
"A2": {
"dep_name": "电机工程",
"dept_no": "A2",
}
}
}
var value = []
for (let i in input.data) {
var deptNo = input.data[i].dept_no;
var depName = input.data[i].dep_name;
value[i] = [deptNo, depName];
}
console.log(value);

var test = [];
var a = '1234';
var b = '5678';
test[0] = [a, b];
test[1] = ['字串', '测试']
console.log(test);

输出结果


如上图,在input取值后A1、A2的属性标签仍会跟随deptNo、depName被传递
上网以“JS object标签 删除”等等关键字搜寻后也没有找到类似的提问,

想请问论坛前辈要如后修改才能去除标签呢?
...全文
270 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
2020-05-06
  • 打赏
  • 举报
回复
value[i] = [deptNo, depName]; 改成 value.push([deptNo, depName]);
天际的海浪 2020-05-01
  • 打赏
  • 举报
回复
你上面代码不是已经做到了么? 我其实没太明白你的意思。能说清楚些吗?
JPAG 2020-05-01
  • 打赏
  • 举报
回复
那請問如果我只有這組input資料
var input = {
"data": {
"A1": {
"dep_name": "資訊工程",
"dept_no": "A1",
},
"A2": {
"dep_name": "電機工程",
"dept_no": "A2",
}
}
}

想要輸出如下圖的結果該怎麼做呢?
天际的海浪 2020-05-01
  • 打赏
  • 举报
回复
变量(或对象的属性,函数的参数)之间的赋值传递都是复制式的,不是移动。 要删除对象的属性可以用 delete input.data[i].dept_no; 变量在声明之后就不能删除,只能为其赋值undefined

87,903

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧