A JSlint no le gusta el uso de constructores de Array y no hay opciones de JSLint para permitirlos. Por lo tanto, para crear una matriz de longitud n, no se permite lo siguiente:Creando una matriz n-sized mientras hace feliz a JSLint?
var arr = new Array(n);
¿Es la siguiente la única forma en que puedo evitar esto?
var arr = [];
arr.length = 5;
En circunstancias normales, esto no es un gran problema (utilizando dos líneas de código en lugar de uno), pero siento no poder utilizar el concisa truco cadena multiplicador:
function repeat(str, times) {
return new Array(times + 1).join(str);
}
posible duplicado de (http: // stackoverflow. com/questions/4852017/proper-way-to-initialize-an-arrays-length-in-javascript) –
¿Por qué necesita crear una matriz n-sized? Dado que has descrito la función del multiplicador de cadenas como si usaras un "hack", me sorprende que te importe lo que dice jslint sobre 'new Array()' ... pero puedes implementar fácilmente la función 'repeat()' con un ciclo for o la cosa '.length =' si esa es la única razón por la que necesita 'new Array()'. – nnnnnn
* "Lamento no poder usar ..." * ¿Estás bajo alguna restricción que requiera el uso de JSLint? –