En JavaScript : comprendre la nature omniprésente des objets
En discutant des introductions JavaScript, il est souvent mentionné que « presque tout est un objet ». Les débutants peuvent avoir du mal à comprendre ce concept, en particulier lorsqu'ils manipulent des objets non traditionnels comme des chaînes, des nombres et des fonctions.
Valeurs primitives : pas tout à fait des objets
C'est important pour préciser que tout en JavaScript n'est pas un objet. Les valeurs primitives telles que les chaînes, les nombres et les booléens ne sont pas des objets en soi. Ils sont immuables et manquent de méthodes et de propriétés.
Entrez les wrappers d'objet
JavaScript introduit des wrappers d'objet pour les primitives (String, Number, Boolean). Ces wrappers possèdent des méthodes et des propriétés, créant l’illusion que les primitives possèdent elles-mêmes ces caractéristiques. Lors de l'accès aux propriétés ou aux méthodes des primitives, JavaScript crée automatiquement un objet wrapper et exécute l'action sur celui-ci.
Exemples en action
Illustrons avec des exemples de code :
Exemple de chaîne :
const s = "Hello"; const sub = s.substring(1, 3); // Output: "el"
En coulisses, JavaScript crée un wrapper de chaîne pour s et appelle sa méthode de sous-chaîne dessus.
Exemple de fonction :
function greet() { return "Hello"; } greet.name = "myGreeting"; // Property added to the function object console.log(greet.name); // Output: "myGreeting"
Conclusion
Bien que tout en JavaScript ne soit pas un objet, les valeurs primitives peuvent interagir avec des comportements de type objet via leurs wrappers correspondants . Les fonctions, quant à elles, sont des objets polyvalents dotés de toutes les capacités d'accès et de manipulation des propriétés et des méthodes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!