JSlint, Array kurucularının kullanımını sevmez ve onlara izin vermek için JSLint seçeneği yoktur. Bu nedenle, n uzunluğundaki bir Array oluşturmak için, aşağıdaki izin verilmez:JSLint'i mutlu ederken n boyutlu bir Dizi oluşturma?
var arr = new Array(n);
bu sorunun üstesinden gelebilirsiniz tek yolu aşağıda mı? Normal koşullarda
var arr = [];
arr.length = 5;
bu (bir yerine iki kod satırlarını kullanarak) büyük bir anlaşma değil, ama özlü dize çarpan kesmek kullanmak mümkün olmayan pişman:
function repeat(str, times) {
return new Array(times + 1).join(str);
}
olası yinelenen (http: // stackoverflow. com/questions/4852017/doğru-şekilde-initialize-an-diziler-uzunluk-in-javascript) –
N-boyutlu bir dizi neden oluşturmalısınız? Dize çarpan fonksiyonunu bir "hack" kullanarak açıkladığınız göz önüne alındığında, jslint'in "new Array()" hakkında ne dediğini umursamaya başladım, ancak 'repeat()' işlevini bir for döngüsüyle kolayca uygulayabilirsiniz. ya da '.length =', eğer ihtiyacın tek sebebi buysa, yeni Array() '. – nnnnnn
* "Kullanamadığım için pişmanlık duyuyorum ..." * JSLint'i kullanmanız gereken bazı kısıtlamalar var mı? –