javascript 向数组添加n个空字符串

作者: 寻找自我的兔茽 | 来源:发表于2017-12-07 13:14 被阅读18次

书写文章起因

在最近的抽奖活动开发里,有这么个需求:
接口返回不定数量(length<=9)的奖品数组,前端这边要循环展示长度为9的奖品数组。
so,开始我们今天的正题,添加空字符串数组。

方案1、splice + while
const a = [ 1, 2, 3 ];
while( a.length < 9 ){ a.splice(0, 0, ''); } 

// a结果是: [ '', '', '', '', '', '', 1, 2, 3 ]
方案2、for + push
const a = [ 1, 2, 3 ];
const n = 9 - a.length;
for( let i = 0; i < n; i++  ){ a.push( '' ); }

// a的结果:[ 1, 2, 3, '', '', '', '', '', '' ]
方案3、Array.prototype.fill()

Array.fill是 ES6 新增的方法,它可以帮助你填充数组。
定义:用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。

将原数组的每一个元素填充成 fill 传入的值。
[1,2,3,4].fill(6)  
// => [6,6,6,6]

它支持传入三个参数: fill(value, start, end)
value:用来填充数组元素的值。
start:可选 起始索引,默认值为0。
end:可选 终止索引,默认值为 this.length。

[1, 2, 3].fill(4)            // [4, 4, 4]
[1, 2, 3].fill(4, 1)         // [1, 4, 4]
[1, 2, 3].fill(4, 1, 2)      // [1, 4, 3]
[1, 2, 3].fill(4, 1, 1)      // [1, 2, 3]
[1, 2, 3].fill(4, -3, -2)    // [4, 2, 3]
[1, 2, 3].fill(4, NaN, NaN)  // [1, 2, 3]
Array(3).fill(4);            // [4, 4, 4]

所以第三种方案是:

const a = [ 1, 2, 3 ];
a.concat( Array( 9-a.length ).fill( '' ) );  

// a 的结果为:[1, 3, 9, "", "", "", "", "", ""]

相关文章

  • javascript 向数组添加n个空字符串

    书写文章起因 在最近的抽奖活动开发里,有这么个需求:接口返回不定数量(length<=9)的奖品数组,前端这边要循...

  • Shell数组和字典总结

    一. 数组 1.1 创建数组 创建空数组 names=() 数组添加元素 空格分开的字符串用括号包围 names=...

  • redis字符串对象

    C语言中的字符串 在C语言里面使用长度为N+1的字符数组来表示长度为N的字符串,并且字符数组的最后一个元素总是空字...

  • JS字符串数组常用方法

    字符串 参考:js字符串方法 数组 添加能添加多个,删除只能删一个 数组迭代方法 数组缩小方法 对象

  • 1.5 JavaScript字符串与数组

    JavaScript字符串与数组

  • 3.3.5 访问C风格字符串中的某个元素

    C风格字符串是一类特殊的字符数组(最后一个元素是空字\n’) 通过“数组名+下表索引”的方式对某个元素(即字符串中...

  • javascript学习笔记--数组的方法

    1.向数组添加元素a..length属性的形式向数组末尾添加一个元素: b.方法形式向数组末尾添加一个或者多个元素...

  • JS 数组详解

    添加 push(向数组的后面添加) unshift(向数组的前面添加值) 扩展运算符...arr 可以将一个数组展...

  • Swift 数组

    申明一个空数组要指定数组类型 合并数组 添加元素 数组置空 插入元素

  • ES6+ 数组方法

    1 、concat() 数组、字符串合并。 2、 at() 数组、字符串、类数组中添加.at()方法at()支持正...

网友评论

    本文标题:javascript 向数组添加n个空字符串

    本文链接:https://www.haomeiwen.com/subject/akzrixtx.html