Constructeur
Nouveau objet ()
Nouvel objet (valeur)
paramètre
valeur
Paramètre facultatif qui déclare que la valeur d'origine (c'est-à-dire le nombre, la valeur booléenne ou la chaîne) est convertie en un objet numérique, un objet booléen ou un objet de chaîne. Cet objet n'est pas pris en charge par JavaScript avant 1.1 et ECMAScript VL.
Valeur de retour
Si aucun paramètre de valeur n'est transmis au constructeur, il renverra une instance d'objet nouvellement créée. Si le paramètre de valeur d'origine est spécifié, le constructeur crée et renvoie l'objet de wrapper de valeur d'origine, à savoir l'objet numéro, l'objet booléen ou l'objet String. Lorsque le nouvel opérateur n'est pas utilisé, le constructeur Object () est appelé en fonction, il se comporte de la même manière que lors de l'utilisation du nouvel opérateur.
propriété
constructeur
Référence à une fonction JavaScript qui est le constructeur de l'objet
méthode
1.HasownProperty ()
Vérifiez si l'objet a des propriétés localement définies (non héritées) avec des noms spécifiques.
La copie de code est la suivante:
<script type = "text / javascript">
var o = nouvel objet ();
O.Name = "Tom";
alert (o.hasownproperty ("nom")); //vrai
alerte (O.HasownProperty ("âge")); //FAUX
</cript>
2.SprototypeOf ()
grammaire
object.isprototypeof (o)
paramètre
o
Tout objet.
Valeur de retour
Return true si l'objet est un prototype d'O. Si O n'est pas un objet, ou l'objet n'est pas un prototype d'O, alors false est renvoyé.
décrire
Les objets JavaScript héritent les propriétés de l'objet Prototype. Le prototype d'un objet est référencé par l'attribut prototype du constructeur utilisé pour créer et initialiser l'objet. La méthode isPrototypeOf () fournit une méthode pour déterminer si un objet est un prototype d'un autre objet. Cette méthode peut être utilisée pour déterminer la classe d'un objet.
Exemple
La copie de code est la suivante:
var o = nouvel objet (); // Créer un objet
Object.prototype.isprototypeof (o) // true: o est un objet
Function.prototype.isprototypeof (O.ToString); // Vrai: Tostring est une fonction
Array.prototype.isprototypeof ([1,2,3]); // vrai: [1,2,3] est un tableau
// Ce qui suit est une autre façon d'effectuer le même test
(O.Constructor == Object); // vrai: o a été créé avec objet () Constructeur
(o.tostring.constructor == fonction); // Vrai: O.Tostring est une fonction
/ Prototype L'objet lui-même est l'objet Prototype. L'appel suivant renvoie True
// Instructions La fonction hérite de la fonction.prototype et objet.prototype Propriétés.
Object.prototype.isprototypeof (function.prototype);
3.ProERTYISEnuMableable ()
grammaire
object.propertyisenumable (propName)
paramètre
nom de propnom
Une chaîne contenant le nom du prototype d'objet.
Valeur de retour
Retour True Si l'objet a une propriété non héritée nommée propName et que la propriété est énumérable (c'est-à-dire qu'elle peut être énumérée avec une boucle pour / en boucle).
décrire
Utilisez l'instruction FOR / IN pour traverser les propriétés d'un objet "énumérable". Mais toutes les propriétés d'un objet ne sont pas énumérées. Les attributs ajoutés à un objet via le code JavaScript sont énumérables, tandis que les propriétés prédéfinies (telles que les méthodes) des objets internes ne sont généralement pas énumérées. La méthode de propriétés disséminables () fournit un moyen de faire la distinction entre les propriétés énumérées et non énumérables. Mais il convient de noter que la norme ECMAScript stipule que la méthode PropertySenumable () ne détecte pas la chaîne prototype, ce qui signifie qu'il s'applique uniquement aux propriétés locales de l'objet et ne peut pas détecter l'énumération des propriétés héréditaires.
Exemple
La copie de code est la suivante:
var o = nouvel objet (); // Créer un objet
OX = 3,14; // Définir - Attributs
O.PropertySenumerable ("x"); // True Property X est local et énumérable
O.PropertySenumableable ("Y"); // faux: o n'a pas d'attribut y
O.PropertyIsEnumablem ("tostring"); // faux: la propriété tostrlng est héritée
Object.prototype.propertyisenumable ("toString"); // faux: énuméré
Bogue
Il est évidemment faux lorsque la norme limite les propriétés de la méthode () pour détecter uniquement les propriétés non héritées. Internet Explorer 5.5 implémente cette méthode selon la norme. La méthode PropertySeNumerable () implémentée dans Nestacpe 6.0 prend en compte la chaîne prototype. Bien que cette approche soit souhaitable, elle entre en conflit avec la norme, donc Netscape 6.1 l'a modifié pour correspondre à IE 5.5. Puisqu'il y a cette erreur dans la norme, cette méthode n'est pas si utile.
La copie de code est la suivante:
<cript>
var obj = nouveau objet ();
obj.title = 'aaa';
obj.funb = fonction (a, b)
{
alerte (a + b);
}
alerte (obj.title);
obj.funb (1,2);
</cript>
Voici une méthode
************************************
La copie de code est la suivante:
<script linguisse = "javascript">
objet de fonction (valeur, a, b) {
this.title = valeur;
this.funb = function () {
this.a = a;
this.b = b;
alerte (a + b);
}
}
var obj = nouvel objet ("aaa", 1,2);
alerte (obj.title);
obj.funb ();
// ajoute une nouvelle méthode à l'objet ici
object.prototype.name = "123456";
alert (obj.name);
</cript>
Voici une autre façon