javascript - ES6:将对象推入数组返回数组长度。如何将其存储为 sessionStorage 中的对象数组
问题描述
我正在尝试将对象推入数组并将其存储在 sessionStorage 中。但是对象的array.push 返回数组的长度。如何将实际对象存储到数组中?
const counties = {
"Bucks": {
"countyCode": "42017",
"globalStateCode": "PA",
"stateCode": "PA"
},
"Montgomery": {
"countyCode": "42091",
"globalStateCode": "PA",
"stateCode": "PA"
}
};
let selectedCountiesArray = [];
console.log(selectedCountiesArray.push(counties['Bucks'])); // 1
sessionStorage.setItem("tableDisplay", JSON.stringify(selectedCountiesArray.push(counties['Bucks'])));
let selectedCounties = JSON.parse(sessionStorage.getItem("tableDisplay"));
预期结果:
[{
countyCode: "42017",
globalStateCode: "PA",
stateCode: "PA"
}]
解决方案
您正在尝试存储 array.push() 的返回值而不是实际的数组。
首先,将值推送到一个数组,然后将该数组作为参数传递给sessionStorage.setItem
const counties = {
"Bucks": {
"countyCode": "42017",
"globalStateCode": "PA",
"stateCode": "PA"
},
"Montgomery": {
"countyCode": "42091",
"globalStateCode": "PA",
"stateCode": "PA"
}
};
//Push to Array
let selectedCountiesArray = [];
selectedCountiesArray.push(counties['Bucks'])
//Set item
sessionStorage.setItem("tableDisplay", JSON.stringify(selectedCountiesArray));
//Get Item
let selectedCounties = JSON.parse(sessionStorage.getItem("tableDisplay"));
console.log(selectedCounties)
推荐阅读
- .htaccess - 将所有 .php 重定向到同名 + 前缀
- networking - CORE网络模拟器中如何使用RJ45工具?
- r - 如何绘制时间序列图并在线条上放置箱形图?
- python - 当某些行为该相关对象返回空值时,如何使用 select_related()?
- sql - 如何在Sql中创建表下方的键(主键)?
- apache - 在 DocumentRoot 的子文件夹中安装 Symfony 4
- kubernetes - 不允许外部流量通过 ISTIO
- reactjs - 是否可以创建一个通用的 React 列表组件?
- regex - 从正则表达式组中删除某些字符
- javascript - 当一个可能为空时,如何使用 JavaScript 添加多个货币文本框?