Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.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 如何创建从null开始且长度变化的字符串动态数组?_Javascript - Fatal编程技术网

Javascript 如何创建从null开始且长度变化的字符串动态数组?

Javascript 如何创建从null开始且长度变化的字符串动态数组?,javascript,Javascript,如何创建从null开始且长度变化的字符串动态数组 我不太明白,但是当你把一个项目推到一个数组中时,你会自动增加该数组的长度: var colors = []; //colors.length = 0; colors is an empty array colors.push('blue'); //colors.length=1; colors=['blue']; colors.push('green'); //colors.length=2;colors=['blue','green']; 您

如何创建从null开始且长度变化的字符串动态数组

我不太明白,但是当你把一个项目推到一个数组中时,你会自动增加该数组的长度:

var colors = []; //colors.length = 0; colors is an empty array
colors.push('blue'); //colors.length=1; colors=['blue'];
colors.push('green'); //colors.length=2;colors=['blue','green'];
您可以通过length属性访问它

var colorsLength = colors.length //after the above - this will give 2
要将此值添加到本地存储,请使用以下命令:

localStorage.setItem('colors',colorsLength );
然后使用

var colors=localStorage.getItem('colorsLength');
请注意,localStorage和sessionStorage将信息存储为字符串—因此,如果要对其进行计算,则需要对其进行解析以将其转换为数字


如果要存储实际数组,则需要将其字符串化以将其输入本地存储器。

在javascript中,数组中项目的索引与其插入顺序相同。因此,如果将“蓝色”放入颜色数组,则

colors[0] === 'blue'
这是真的

在任何时候,您都可以使用

colors.length 

localStorage存储字符串,而不是对象或数组。您必须将其存储为字符串,以便:

['blue', 'orange', 'yellow', 'green', ...]
将变成这样:

blue,orange,yellow,green
最初从localStorage读取时,可以执行以下操作:

var colors = [];
var colorStore = localStorage.getItem('colors');

if ( colorStore ) {
    colors = colorStore.split(/,/);
}

现在还不清楚你到底想做什么如果你使用推送它们,长度会自动更新吗?请提供更多详细信息[]在此上下文中是一个JavaScript数组。它与JSON无关。push会在数组的末尾添加一个元素。它不能代替任何东西。看一看这张照片。看起来你只是误解了。推送是做什么的?JSON和你的问题的关系就像飞鱼一样,也就是说什么都没有。您似乎将对象/数组与JSON混淆了。请注意,长度只是最高的索引值+1。因此,如果您将colors[1001]='bleaugh'设置为colors.length==1002,则表示已批准-但OP指示他正在推送元素,从而在下一个索引号处将元素添加到现有数组的末尾。True。我只是添加了一些额外的信息。