Maison >interface Web >js tutoriel >Quelles sont les façons de créer des objets en javascript

Quelles sont les façons de créer des objets en javascript

青灯夜游
青灯夜游original
2021-06-29 18:24:403651parcourir

Méthode de création : 1. Utilisez l'instruction "var object name = {attribute name 1 : value 1,attribut name 2 : value 2,...};" new construct Function name (args);" instruction; 3. Utilisez l'instruction "Object.create (objet prototype, descripteurs)".

Quelles sont les façons de créer des objets en javascript

L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.

Il existe 3 façons de créer des objets en JavaScript :

  • Objet littéral

  • Objet de construction

  • Utilisez Object.create

Quantité directe d'objet

L'utilisation de la quantité directe peut être rapide Création objets est également le moyen le plus efficace et le plus simple. L'utilisation spécifique est la suivante :

var objectName = {
    属性名1 : 属性值1,
    属性名2 : 属性值2,
    ...
    属性名n : 属性值n
};

Dans les littéraux d'objet, le nom de l'attribut et la valeur de l'attribut sont séparés par des deux-points. La valeur de l'attribut peut être n'importe quel type de données et le nom de l'attribut peut être un identifiant JavaScript ou un. chaîne. Les propriétés sont séparées par des virgules et aucune virgule n'est requise à la fin de la dernière propriété.

Exemple

Le code suivant utilise des littéraux d'objet pour définir deux objets.

var o = {  //对象直接量
    a : 1,  //定义属性
    b : true  //定义属性
}
var o1 = {  //对象直接量
    "a" : 1,  //定义属性
    "b" : true  //定义属性
}

Objet de construction

Utilisez l'opérateur new pour appeler le constructeur afin de construire un objet instance. L'utilisation spécifique est la suivante :

var objectName = new functionName(args);

La description du paramètre est la suivante :

  • objectName : l'objet d'instance renvoyé.

  • functionName : Constructeur, fondamentalement identique à une fonction ordinaire, mais n'a pas besoin de renvoyer une valeur de retour. Il renvoie un objet d'instance, accessible à l'avance en utilisant ceci dans le. fonction.

  • args : liste des paramètres de configuration d'initialisation de l'objet d'instance.

Exemple

L'exemple suivant définit diverses instances à l'aide de constructeurs de différents types.

var o = new Object();  //定义一个空对象
var a = new Array();  //定义一个空数组
var f = new Function();  //定义一个空函数

Utiliser Object.create

Object.create est une nouvelle méthode statique dans ECMAScript 5, utilisée pour créer un objet instance . Cette méthode peut spécifier le prototype et les propriétés de l'objet. L'utilisation spécifique est la suivante :

Object.create(prototype, descriptors)

La description du paramètre est la suivante :

  • prototype : un paramètre obligatoire, spécifiant l'objet prototype, qui peut être nul.
  • descripteurs : Paramètre facultatif, un objet JavaScript contenant un ou plusieurs descripteurs de propriété. Les descripteurs de propriétés incluent les propriétés de données et les propriétés d'accesseur, où les propriétés de données sont décrites ci-dessous.
  • valeur : Spécifiez la valeur de l'attribut.
  • inscriptible : la valeur par défaut est false, définit si la valeur de l'attribut est accessible en écriture.
  • enumerable : La valeur par défaut est false, définissez si la propriété est énumérable (pour/dans).
  • configurable : la valeur par défaut est false, définit si les caractéristiques des attributs peuvent être modifiées et les attributs supprimés. La fonctionnalité d'accesseur

contient deux méthodes, une brève description est la suivante :

  • set() : définit la valeur de l'attribut.

  • get() : renvoie la valeur de l'attribut.

Exemple

L'exemple suivant utilise Object.create pour définir un objet, hérite de null et contient deux attributs énumérables : la taille et la forme. sont "grands" et "ronds".

var newObj = Object.create (null, {
    size : {  //属性名
        value : "large",  //属性值
        enumerable : true  //可以枚举
    },
    shape : {  //属性名
        value : "round",  //属性值
        enumerable : true  //可以枚举
    }
});
console.log(newObj.size);  //large
console.log(newObj.shape);  //round
console.log(Object.getPrototypeOf(newObj));  //null

[Recommandations associées : Tutoriel d'apprentissage Javascript]

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn