Javascript 使用括号语法将项目插入数组不会影响长度?

Javascript 使用括号语法将项目插入数组不会影响长度?,javascript,Javascript,使用括号语法添加项时,数组的长度不会增加。如何更新长度 例如: const a=[]; a['u123']=1; a['u456']=2; a、 长度;//返回0 数组没有键,因此您访问它们的方式也是错误的。您可以改为使用push向数组添加值,这些值将基于索引,而不是基于键 const a=[]; a、 推送('u123'); a、 推动('u456'); 控制台日志(a.长度)数组没有键,因此您访问它们的方式也是错误的。您可以改为使用push向数组添加值,这些值将基于索引,而不是基于键 c

使用括号语法添加项时,数组的长度不会增加。如何更新长度

例如:

const a=[];
a['u123']=1;
a['u456']=2;
a、 长度;//返回0

数组没有键,因此您访问它们的方式也是错误的。您可以改为使用
push
向数组添加值,这些值将基于索引,而不是基于键

const a=[];
a、 推送('u123');
a、 推动('u456');

控制台日志(a.长度)数组没有键,因此您访问它们的方式也是错误的。您可以改为使用
push
向数组添加值,这些值将基于索引,而不是基于键

const a=[];
a、 推送('u123');
a、 推动('u456');

控制台日志(a.长度)这是因为您没有向数组中添加项,而是向对象中插入项(键值对)

您可以使用以下语法检查条目的长度:

Object.keys(a).length // returns 2
a.push(1);
a.push('u123')

// ES6 syntax using spread operator
a = [...a, 2, 'u456']
a.length // returns 4
如果要向数组中添加项,请使用以下语法:

Object.keys(a).length // returns 2
a.push(1);
a.push('u123')

// ES6 syntax using spread operator
a = [...a, 2, 'u456']
a.length // returns 4

这是因为您没有将项添加到数组中,而是将条目(键值对)插入到对象中

您可以使用以下语法检查条目的长度:

Object.keys(a).length // returns 2
a.push(1);
a.push('u123')

// ES6 syntax using spread operator
a = [...a, 2, 'u456']
a.length // returns 4
如果要向数组中添加项,请使用以下语法:

Object.keys(a).length // returns 2
a.push(1);
a.push('u123')

// ES6 syntax using spread operator
a = [...a, 2, 'u456']
a.length // returns 4

为了获得关联数组的长度,需要使用Object.keys长度

像这样:

console.log(Object.keys(a).length);

为了获得关联数组的长度,需要使用Object.keys长度

像这样:

console.log(Object.keys(a).length);

如果要更新长度,需要使用
推送
。如果使用方括号,则是在向对象添加新属性(请记住数组是对象)

length属性返回数组中的元素数(而不是属性)


如果要更新长度,需要使用
推送
。如果使用方括号,则是在向对象添加新属性(请记住数组是对象)

length属性返回数组中的元素数(而不是属性)


因为你的语法是在创建对象属性,而不是新的数组值。你必须使用数组中的方法插入iten,如:
a.push(1)
a=[1,2]
,因为你的语法是在创建对象属性,而不是新的数组值。你必须使用数组中的方法插入iten,如:
a.push(1)
a=[1,2]