Maison >interface Web >js tutoriel >Évaluation
Les points suivants résument ce que vous devriez apprendre en lisant ce livre (et en étudiant les exemples de code). Lisez chaque résumé et revenez au sujet du livre si vous ne comprenez pas ce qu'il dit.
new
ou en utilisant des expressions littérales abrégées. Function()
objets), donc, en JavaScript, les objets créent des objets. Object()
、Array()
、String()
、Number()
、Boolean()
、Function()
、Date()
、RegExp()
和 Error()
。 String()
、Number()
和 Boolean()
Les constructeurs ont un double objectif : fournir a) une valeur primitive et b) un wrapper d'objet si nécessaire, afin que la valeur primitive puisse fonctionner comme un objet. null
、undefined
、"string"
、10
、true
和 false
sont des valeurs primitives et n'ont aucune propriété d'objet à moins d'être traitées comme des objets. Array()<code>Array()
, String()
, Number()
, Boolean()
, Function()
, Date ()
、RegExp()
和 Error()
构造函数使用 new
, String()李>, Number()- ,
Boolean()"string"
、10
、true
和 false
,
, Date ()<li> , les constructeurs <code>RegExp()
Error()- sont appelés à l'aide du mot-clé
, créant un objet appelé « objet complexe » ou « objet de référence ». -
"string"- ,
10
, true<li> et <code>false<code>Array['prototype']['join'].apply()
n'ont aucune propriété d'objet dans leur forme brute jusqu'à ce qu'ils soient utilisés comme objets ; JavaScript crée ensuite des objets wrapper temporaires en arrière-plan, pour que les valeurs puissent fonctionner comme des objets.
- Les valeurs originales sont stockées par valeur, lorsqu'elles sont copiées, elles sont copiées littéralement. Les valeurs d'objets complexes, en revanche, sont stockées par référence et, lorsqu'elles sont copiées, sont copiées par référence.
prototype
属性中查找该属性。如果在那里找不到,因为原型持有一个对象值,并且该值是从 Object()
构造函数创建的,因此在 Object()
构造函数 prototype
属性 (Object) 上查找该属性.prototype
)。如果在那里没有找到该属性,则确定该属性为 undefined
Les valeurs primitives sont égales aux autres valeurs primitives lorsque leurs valeurs sont égales, alors que les objets complexes ne sont égaux que s'ils font référence à la même valeur. Autrement dit : lorsqu'une valeur complexe fait référence au même objet, deux valeurs complexes sont égales à l'autre valeur complexe. -
prototype
En raison de la nature des objets et des références complexes, les objets JavaScript ont des propriétés dynamiques.
- JavaScript est mutable, ce qui signifie que les objets natifs et les propriétés d'objet définies par l'utilisateur peuvent être manipulées à tout moment.
Object()
,因为 prototype
属性本身就是一个 Object()
L'obtention/définition/mise à jour des propriétés de l'objet se fait en utilisant la notation par points ou la notation entre crochets. La notation entre crochets est pratique lorsque le nom de la propriété de l'objet sur lequel vous travaillez se présente sous la forme d'une expression (par exemple Array['prototype']['join'].apply()<li>). </li>
<li>Lors du référencement d'une propriété d'objet, une chaîne de recherche est utilisée pour examiner d'abord l'objet auquel la propriété fait référence. Si la propriété n'existe pas, la propriété est recherchée dans l'attribut <code>prototype<code>this
du constructeur. S'il n'y est pas trouvé, parce que le prototype contient une valeur d'objet et que cette valeur est créée à partir du constructeur Object()
, donc dans l'attribut prototype<li> du constructeur <code>Object()<code>this
( Objet) pour retrouver cette propriété.prototype
). Si la propriété n'y est pas trouvée, la propriété est déterminée comme étant undefined<li>. </li>
<li><code>prototype
Les chaînes de recherche sont la manière dont l'héritage (alias héritage prototypique) est conçu en JavaScript. Object()<li> car la propriété <code>prototype
est elle-même un objet Object()<li>. </li>
<li>Les fonctions JavaScript sont des citoyens de premier ordre : les fonctions sont des objets avec des propriétés et des valeurs. <code>var
Le mot-clé
this<li>, lorsqu'il est utilisé dans une fonction, est un moyen général de faire référence à l'objet contenant la fonction. <code>var
La valeur de
this<li> est déterminée au moment de l'exécution en fonction du contexte dans lequel la fonction est appelée. <code>var
Lorsqu'il est utilisé dans la portée globale, le mot-clé this fait référence à l'objet global.
Les fonctions (en particulier les fonctions wrapper) créent des chaînes de portée pour analyser les recherches de variables. 🎜 🎜La chaîne de portée est définie en fonction de la façon dont le code est écrit, pas nécessairement en fonction du contexte dans lequel la fonction est appelée. Cela permet à une fonction d'accéder à la portée dans laquelle elle a été initialement écrite, même si la fonction est appelée depuis un contexte différent. Ce résultat est appelé une fermeture. 🎜 🎜N'utilisez pas
var🎜 Les expressions de fonction et les variables déclarées à l'intérieur d'une fonction deviendront des propriétés globales. Cependant, les instructions de fonction dans la portée de la fonction sont toujours définies dans la portée dans laquelle elles sont écrites. 🎜
🎜Les fonctions et variables déclarées dans la portée globale (sans <code>var🎜) deviendront des propriétés de l'objet global. 🎜
🎜Les fonctions et variables déclarées dans la portée globale (en utilisant <code>var🎜) deviennent des variables globales. 🎜
🎜
🎜
🎜Conclusion🎜
🎜Merci d'avoir lu ! 🎜
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!