Javascript 如何替换或交换阵列?

Javascript 如何替换或交换阵列?,javascript,arrays,Javascript,Arrays,我将myArray=[{a:1,b:2},{a:3,c:4}]保存在localStorage中 JSON.stringify(myArray),使用JSON.parse(localStorage.getItem('nameInLS'))对其进行解析 并将其存储在名为localData的变量中,如果使用console.log,该变量将返回以下内容: [{a: 1, b:2}, {a:3, c4}] 我的代码使用的是myArray,我的问题是,如何用localData替换空的myArray(重新加

我将
myArray=[{a:1,b:2},{a:3,c:4}]
保存在localStorage中
JSON.stringify(myArray)
,使用
JSON.parse(localStorage.getItem('nameInLS'))对其进行解析
并将其存储在名为
localData
的变量中,如果使用
console.log
,该变量将返回以下内容:

[{a: 1, b:2}, {a:3, c4}]
我的代码使用的是
myArray
,我的问题是,如何用
localData
替换空的
myArray
(重新加载站点时为空)

如果我可以交换两个数组的内容,它也会起作用

目标是,在页面加载时,如果localStorage不是空的,则将内容加载到
myArray
,然后调用一个函数,该函数使用
myArray

我尝试过一些奇怪的事情,比如:

myArray.push(localData) //worked but looked like this [[...]]
myArray = localData
localData = myArray //both didn't work

谢谢。

最初从本地存储加载内容有什么问题

如果您试图保存对象,这可能不起作用。您需要将其转换为JSON字符串,如下所示:

const LOCAL_STORAGE_KEY = 'my-array';

// initial load
const rawValue = localStorage.getItem( LOCAL_STORAGE_KEY );
let myArray = rawValue ? JSON.parse( rawValue ) : [];

// do stuff
myArray.push( 'test' );

// save it back again
localStorage.setItem( LOCAL_STORAGE_KEY, JSON.stringify( myArray ) );

为什么你说
myArray=localData
不起作用?你能发布你的代码吗?你的意思可能是
c:4
而不是
c4
?有人用myArray=[…localData]回答;它正在发挥作用。另外@Justinas你是对的myArray=localData也在工作。。。看起来我在使用myArray=localData进行测试时犯了一个错误。谢谢