/**
* @params {number} length 数组的长度
* @params {string} itemValue 数组中的默认item,不传就是空
*/
export function setFixedLengthArray(length, itemValue="") {
return "".padEnd(length, "0").split("").map(() => itemValue);
}
原理: 利用给空字符串末尾加0的方法,创建长度为n的字符串,之后再对其分割,并替换每个item成为你想要设置的值,便可快速达到目的。
这个方法存在于es7
// 以下两个都可以用
padStart()用于头部补全,
padEnd()用于尾部补全。
两个用法一样。
/**
* length 添加后的总长度
* value 要添加的元素,会重复添加
*/
padEnd(length, value)
例子:
'x'.padEnd(5, 'ab') // 在x后面添加ab,结果为 xabab
'x'.padEnd(4, 'ab') // 在x后面添加ab,结果为 xaba (会自动截取)
这两天看文章又发现了一个原始的方法。为之前的无知道歉。。本以为发现了新大陆,结果是个小虾米。。
function setFixedLengthArray(length, itemValue=""){
new Array(length).fill(itemValue)
}