Dans le code javascript suivant, []
est affecté comme valeur d'une variable, qu'est-ce que cela signifie?Que signifie [] en JavaScript?
var openTollDebug = [];
Dans le code javascript suivant, []
est affecté comme valeur d'une variable, qu'est-ce que cela signifie?Que signifie [] en JavaScript?
var openTollDebug = [];
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]
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'
Il est un tableau vide, et est égal à
var openTollDebug = new Array();
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.
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';
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.
var b = [] //it is an array literal.
Vous devriez vérifier pour voir s'il y a des réponses qui fournissent déjà la même information. – Quaternion
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
Ooh, joli verbiage! –
Tant que 'Array' n'a pas été écrasé,' new Array() 'et' [] 'sont fonctionnellement identiques. –
@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]' :) –