var obj = {
name: "Simon",
age: "20",
clothing: {
style: "simple",
hipster: false
}
}
for(var propt in obj){
console.log(propt + ': ' + obj[propt]);
}
Como é que a variável `propt' representa as propriedades do objecto? It'não é um método ou propriedade incorporada. Porque é que ela vem com todas as propriedades do objecto?
É o for...in statement
(MDN, ECMAScript spec).
Você pode ler como "FOR cada propriedade IN o objeto obj
, atribuir cada propriedade à variável **PROPT*** por sua vez".
O seu 'for' loop está iterando sobre todas as propriedades do objeto 'obj'. O propt
é definido na primeira linha do seu loop for. É uma string que é um nome de uma propriedade do objeto obj
. Na primeira iteração do laço, propt
seria "name".