Les types d'emballage de base sont des types de référence spéciaux. Chaque fois qu'une valeur de type de base est lue, un objet correspondant de type d'emballage de base sera créé en arrière-plan, afin que les attributs et les méthodes puissent être appelés pour les opérations ultérieures.
ECMAScript fournit également trois types d'empaquetage de base : Number, String et Boolean.
Nous écrivons souvent du code comme celui-ci. Les variables de type basique peuvent être utilisées comme objets pour appeler des propriétés et des méthodes, mais ce n'est pas un objet réel, juste une variable, alors ça Pourquoi ?
1 var str = "hello world"; 2 console.log(str.length); // 11 3 console.log(str.toUpperCase());// HELLO WORLD
En fait, afin de faciliter la manipulation des valeurs de type de données de base, la valeur du type de données de base en JavaScript créera un type wrapper de base correspondant objet en arrière-plan , sauf null et non défini, tous les types de base ont des types d'emballage correspondants.
Avec le code ci-dessus, l'arrière-plan effectuera automatiquement le traitement suivant :
Lors de l'exécution de la deuxième ligne :
Créer une instance de la chaîne type;
Appeler l'attribut spécifié sur l'instance
Détruire cette instance
Exécuter jusqu'aux trois premières lignes :
Créer une instance de type String
Appeler la méthode spécifiée sur l'instance
Détruisez cette instance
Vous pouvez considérer les trois étapes ci-dessus comme l'exécution du code ECMAScript suivant :
1 // 执行到第二行时 2 var str = new String("hello world"); 3 str.length; 4 str = null; 5 6 // 执行到第三行时 7 var str = new String("hello world"); 8 str.toUpperCase(); 9 str = null;
De cette façon, les chaînes du code ci-dessus deviennent identiques aux objets. La même chose s'applique aux types de données de base correspondant respectivement aux types Booléen et Numérique
Maintenant ; en comprenez-vous les bases ? Le type d'emballage est en fait le type correspondant au type de données de base
string | String |
number | Number |
布尔类型(true、false) | Boolean |
Ce n'est pas le type d'emballage qui fournit la méthode, mais le backend du moteur javascript a créé une instance (objet) correspondant au type d'emballage de base
Chaque fois qu'une valeur de type de base est lue, un type d'emballage de base correspondant un objet sera créé en arrière-plan tel que :
1 var str = new String("hello world"); 2 str.length; 3 str = null;
s='some' s.age='Joel' console.log(s.age);
s= String('some' s.age='Joel' console.log(s.age);
1. Chaque type de données de base est mappé à des types d'emballage de base portant le même nom (sauf null et non défini).
2. Lors de la lecture d'une valeur de type de base, un objet de type d'emballage de base correspondant sera créé, facilitant ainsi les opérations sur les données.
3. Une fois l'objet de la classe d'emballage de base terminé, il sera immédiatement détruit.
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!