如何避免“;使用数组文字表示法“;以下javascript代码中的jslint错误

How to avoid the "use the array literal notation" jslint error in the following javascript code

本文关键字:代码 javascript jslint 错误 以下 表示 何避免 数组 文字      更新时间:2023-09-26

可能重复:
什么';var x=new Array()错误;

if (!Number.prototype.toZeroPaddedString) {
  Number.prototype.toZeroPaddedString = function (count) {
    "use strict";
    var str = this.toString();
    return (new Array(count + 1 - str.length)).join('0') + str;
  };
}

我希望我的代码按照jsLint标准是干净的,然而,我无法想象如何在我想要做的事情中消除这个错误

有什么建议吗?

谢谢。

数组文字表示法是使用new Array()的替代方法,因为Crockford(理所当然地)不喜欢new关键字。符号是[],就像new Object()的文字符号是{}一样。为了使数组的长度符合需要,可以在数组上设置.length

return (new Array(count + 1 - str.length)).join('0') + str;

收件人:

var arr = [];
arr.length = count + 1 - str.length;
return arr​.join('0') + str;

试试这个:

if (!Number.prototype.toZeroPaddedString) {
  Number.prototype.toZeroPaddedString = function (count) {
    "use strict";
    var str = this.toString();
    var ary = [];
    ary.length = count + 1 - str.length;
    return ary.join('0') + str;
  };
}