JS é uma linguagem interessante!
Além das coisas já bem conhecidas(espero)!
Que funções são valores!
O fato de funções serem tratadas como valores!
Funções serem cidadãos de primeira classe! Entre outras coisas da parte funcional do JS!
Mas hoje quero mostrar algo sobre que tudo no JS é objeto!
function teste(){}
teste['testeinterno'] = 'oi'
console.log(teste.testeinterno) // 'oi'
for(chave in teste){
console.log(chave)
}
//"testeinterno"
Colocamos uma propriedade na função?
Como assim?
Isso acontece pq tudo no JS é objeto.
Inclusive uma função!
E como um bom objeto no JS você pode colocar propriedades nele!
Não é um erro! Nem uma esquisitice.
Vamos ver um array! Que é um objeto :P
const arr = ['testar', '09']
//array normal!
arr['oi'] = 'neh'
arr[1.5] = 'hello'
arr[-1] = 'bah'
// como ele é objeto! Podemos por propriedades //e valores!
for(chave in arr){
console.log(chave)
}
//"0" "1" "oi" "1.5" "-1"
console.log(arr) // ["testar", "09"]
console.log(arr.oi) // 'oi'
console.log(arr[-1]) // 'bah'
console.log(arr[-1] + arr[1.5]) //"bahhello"
Isso e outras coisas podem aparecer pra você em algum momento!
Por enquanto é isso!
Em breve quero escrever mais textos sobre isso e complementar este!
Brinque no JSBIN
https://jsbin.com/fuxazuniqo/1/edit?js,console
https://www.youtube.com/watch?v=n5uiJr-v0KQ
https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Guide/Working_with_Objects
Top comments (0)