2010-02-17 6 views

Répondre

55

est un tableau littéral. Ce n'est pas tout à fait la même chose que de déclarer new Array() - l'objet Array peut être écrasé en JavaScript, mais pas le littéral de tableau. Voici un exemple pour démontrer

// let's overwrite the Array object 
Array = function(id) { 
this.id = id; 
} 

var a = new Array(1); 
var b = []; 

console.log(a.hasOwnProperty("id")); // true 
console.log(b.hasOwnProperty("id")); // false 

console.log(a.push); // false, push doesn't exist on a 
console.log(b.push); // true, but it does on b 

b.push(2); 
console.log(b); // outputs [2] 
+4

Ooh, joli verbiage! –

+0

Tant que 'Array' n'a pas été écrasé,' new Array() 'et' [] 'sont fonctionnellement identiques. –

+4

@Tim - oui ils sont. Il y a aussi une différence dans les valeurs d'initialisation et la longueur - 'new Array (5)' n'est pas la même chose que '[5]' :) –

7

Cela signifie un tableau.

var openTollDebug = []; 

déclare la variable openTollDebug et initialise un tableau vide. Pour mettre des éléments dans le tableau, vous pouvez faire ce qui suit:

var stringArray = ['element1', 'element2', 'element3']; 
alert(stringArray[1]); // displays 'element2' 
var numberArray = [1, 2, 3, 4]; 
alert(numberArray[2]); // displays 3 
var objectArray = [{ name: 'john' }, { name: 'peter' }, { name: 'tom' }]; 
alert(objectArray[1].name); // displays 'peter' 
6

Il est un tableau vide, et est égal à

var openTollDebug = new Array(); 
4

Il est un raccourci pour tableau vide. Identique au nouveau tableau(). Aussi {} est un objet vide. Les objets sont comme des hashtables dans Js, donc vous pouvez l'utiliser comme un dictionnaire.

2

Il crée un tableau vide.
C'est un bon moyen d'avoir un objet non nul.
En JavaScript, il est alors très facile d'ajouter des fonctions et des propriétés à cet objet. Par exemple:

openTollDebug.title = 'hello world'; 
openTollDebug.show = function(){alert('Debug');}; 

Comme un tableau, vous pouvez ajouter des éléments:

openTollDebug.push('added item'); 
openTollDebug[3] = 'just add anywhere'; 
1

De nombreuses langues ont des constructions littérales. Le [] est un littéral de tableau.

var openTollDebug = []; 

est le même que

var openTollDebug = new Array(); 

Il suffit de savoir que l'utilisation de [] préféré pour des raisons de performance.

Il existe d'autres littéraux comme objet littéraux

var MyObject = { 
       name:'default', 
       age:22, 
       hobbies:["golf","video games","otherstuff"] 
} 

Remarque le tableau littéral avec des données. Le [] crée un tableau vide.

0
var b = [] //it is an array literal. 
+6

Vous devriez vérifier pour voir s'il y a des réponses qui fournissent déjà la même information. – Quaternion

1

Essayez d'utiliser des littéraux en raison de leurs performances.Vous n'écrire

var obj = new Object({name: 'John'}) 

Vous venez d'écrire

var obj = {name: 'John'} 

Vous ne aussi écrire

button.onclick = new Function("alert('Clicked!')"); 

Vous écrivez

button.onclick = function() { alert('Clicked') } 

Et voici a link un blog agréable à ce sujet