S'il vous plaît quelqu'un pourrait me dire pourquoi la ligne 1 ci-dessous jette l'erreurerreur simple avec underscore
Uncaught TypeError: Cannot read property 'age' of undefined.
Je suis nouveau à javascript et l'épine dorsale et cette erreur fait aucun sens pour moi.
Merci
<script>
var Person = Backbone.Model.extend({
initialize: function(){
console.log("Person is initialized");
}
});
var People = Backbone.Collection.extend({
model: Person,
initialize: function(){
console.log("People model is initialized");
}
});
var person = new Person({age: 12});
var person2 = new Person({age: 15});
var person3 = new Person({age: 12});
var people = new People();
people.add(person);
people.add(person2);
// (1) var ages = _.where(people, {age: 12});
console.log(ages);
</script>
Ce n'est pas un problème de backbone/underscore, mais plutôt un problème de base JS. Vous essayez de lire une propriété nommée 'age' à partir d'une référence qui a la valeur de' undefined'. –
@ FabrícioMatté S'il vous plaît pouvez-vous expliquer. Je ne suis pas clair sur votre réponse. Merci – user2225631
Je ne suis pas sûr de ce qui est indéfini ici. Les objets personne sont tous définis. Ensuite, ils sont ajoutés aux personnes (qui est un objet de collection défini). Je pensais que console.log imprimerait un tableau d'objets personnels avec l'attribut age = 12 ?? – user2225631