如何向指定结构的JavaScript数组locations中追加元素?
在JavaScript数组中追加新元素的几种方法
嘿,这个需求超简单的!JavaScript里给数组追加元素有好几种常用方式,完美适配你这个locations数组的结构,我给你拆解几个最实用的:
方法1:用push()直接追加(修改原数组)
这是最常用的方式,直接在原数组的末尾添加新元素,会修改原数组:
// 先定义符合结构的新元素:[海滩名称, 纬度, 经度, 优先级] const newBeach = ['Bronte Beach', -33.869847, 151.277479, 6]; // 追加到原数组末尾 locations.push(newBeach); // 也可以直接把数组字面量传进去,省略变量 locations.push(['Bronte Beach', -33.869847, 151.277479, 6]);
push()方法会返回数组新的长度,如果你不需要这个返回值的话,直接调用就行。
方法2:用concat()生成新数组(不修改原数组)
如果你不想改动原数组,想要生成一个包含原元素+新元素的新数组,就用concat():
// 追加单个元素 const newLocations = locations.concat(['Bronte Beach', -33.869847, 151.277479, 6]); // 一次性追加多个元素也没问题 const newLocations = locations.concat( ['Bronte Beach', -33.869847, 151.277479, 6], ['Tamarama Beach', -33.864469, 151.276595, 7] );
concat()不会改变原数组,只会返回一个全新的数组,适合需要保留原数据的场景。
方法3:ES6展开运算符(生成新数组,语法更简洁)
ES6之后可以用展开运算符...来实现,和concat()效果类似,但语法更清爽:
// 追加单个元素 const newLocations = [...locations, ['Bronte Beach', -33.869847, 151.277479, 6]]; // 追加多个元素 const newLocations = [ ...locations, ['Bronte Beach', -33.869847, 151.277479, 6], ['Tamarama Beach', -33.864469, 151.276595, 7] ];
这种方式同样不会修改原数组,代码可读性更高,现在很多项目里都常用。
总之,如果你想直接在原数组后面加元素,用push()最方便;如果不想动原数组,就选concat()或者展开运算符~只要新元素的结构和现有元素保持一致([名称, 纬度, 经度, 优先级]),就完全没问题啦!
内容的提问来源于stack exchange,提问作者Siy
相关产品推荐
相关产品推荐

