javascript - directives - ¿Entender la jerarquía del $ scope en AngularJS?
ng-bind (2)
Cuando inspecciona un objeto en la consola, se hace referencia al nombre de clase de este objeto, por ejemplo:
function Scope() {}
var s = new Scope();
En su caso, en lugar de la function Scope() {}
, en la versión minimizada, el código se ve como esta function b() {}
y se usa new b()
lugar del new Scope()
Cuando creo un objeto y navego a través de la propiedad _proto__, sé que ha sido heredado de Object
Ahora cuando creo un nuevo objeto y heredo el objeto obj, obtengo la estructura de herencia como esta
Aquí puedo entender que el objeto obj1 se hereda del objeto obj y el objeto obj se hereda del objeto Objeto, que es el objeto global.
Ahora mi pregunta es, cuando depuro en mi consola obtengo obj y obj1 como Object pero cuando depuro el $ scope de angularJS obtengo algo como esto
¿Por qué el $ scope devuelve b en lugar de Object que se puede ver en todas las dos imágenes de arriba, lo que es tan diferente en angularJS, me falta algo.
ACTUALIZACIÓN 1
cuando hago un objeto del constructor en javascript obtengo el nombre de la función en el constructor como se muestra en la imagen a continuación
Pero en el caso del $ scope no veo ninguna función constructora, ¿por qué? me estoy perdiendo algo, por favor avíseme
Esto se debe a que está depurando aplicaciones minificadas.
$scope
es una instancia de clase Scope
o ChildScope
interna .
En el paquete angular minúsculo, la clase se llama algo así como b
.