Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何获取本地存储中变量的数组长度_Javascript_Arrays_Json_Local Storage - Fatal编程技术网

Javascript 如何获取本地存储中变量的数组长度

Javascript 如何获取本地存储中变量的数组长度,javascript,arrays,json,local-storage,Javascript,Arrays,Json,Local Storage,我有一个存储在localStorage中的数组,其中有一个名为“key”的键,它包含以下值[“Gio”,“Ben”] 我怎么知道长度 我试过了 localStorage.getItem(“name”).length 但它显示了不同的输出 我所期待的应该是2 提前感谢您必须使用JSON.parse来解析数组,然后您可以像其他任何数组一样获得其长度 var arrayFromStroage = JSON.parse(localStorage.getItem("name")); var arrayLe

我有一个存储在localStorage中的数组,其中有一个名为“key”的键,它包含以下值[“Gio”,“Ben”]

我怎么知道长度 我试过了

localStorage.getItem(“name”).length

但它显示了不同的输出 我所期待的应该是2


提前感谢

您必须使用
JSON.parse来解析数组,然后您可以像其他任何数组一样获得其长度

var arrayFromStroage = JSON.parse(localStorage.getItem("name"));
var arrayLength = arrayFromStroage.length;


只是为了提醒您,
localStorage.getItem(“name”).length
将获取存储在localStorage中的JSON字符串的长度。对于数组
[“Gio”,“Ben”]
,其JSON字符串是
“[“Gio”,“Ben”]”
。所以长度应该是13。

本地存储只存储字符串

如果其中有一个数组,则需要在将其与
JSON一起使用之前对其进行解析。parse

var arrStr='[“Gio”,“Ben”];

log(JSON.parse(arrStr))实际上我们只能在本地存储中保存字符串值。getItem(“name”)函数返回一个字符串。因此,首先必须将其转换为json对象,然后才能获得数组长度

JSON.parse(localStorage.getItem("name")).length;

@Yatooo试试这个。希望这能对你有所帮助谢谢,但是如果我想从数组中得到一个特定的值呢?@yatooo然后你可以在解析过的数组上迭代,即我的代码片段中的
arrayfromstorage
。或者,您甚至可以对该数组进行筛选。谢谢您的帮助。先生,我如何循环打印我尝试过的数组的内容(var i=0;i
第二个是,
arrayFromStorage.forEach(t=>console.log(t))有关更多信息,请参考问题。