J'ai utilisé l'instance et le type de temps occasionnellement avant, en particulier le type de type, et je l'ai utilisé davantage. Aujourd'hui, j'ai étudié le code source EXT et utilisé l'instance de de nombreux endroits. J'ai soudain senti qu'ils étaient quelque peu similaires mais ils devraient être différents. J'ai lu certains articles en ligne et j'ai une certaine compréhension de la relation entre eux.
L'instructionof et le typeof peuvent être utilisées pour déterminer si une variable est vide ou quel type de variable.
Le type de type est utilisé pour obtenir le type d'une variable. Le typeof ne peut généralement renvoyer que les résultats suivants: numéro, booléen, chaîne, fonction, objet, indéfini. Nous pouvons utiliser le typeof pour savoir si une variable existe, comme si (typeof a! = "Undefined") {}, au lieu d'utiliser si (a) parce que si A n'existe pas (non déclaré), une erreur se produira. Pour les objets spéciaux tels que le tableau, Null, etc., vous renverrez un objet. Ceci est la limitation du typeof.
Si nous voulons obtenir si un objet est un tableau ou déterminer si une variable est une instance d'un objet, nous devons choisir d'utiliser l'instance OFF. L'instructionof est utilisée pour déterminer si une variable est une instance d'un objet. Par exemple, var a = nouveau array (); alert (une instance de tableau); reviendra true et alert (un objet instance Of) renvoie également true; En effet, le tableau est une sous-classe d'objet. Par exemple: fonction test () {}; var a = new test (); alert (a instanceOf test) renvoie true.
En ce qui concerne l'instance, nous devons insérer un problème de plus, c'est-à-dire les arguments de fonction. Nous pouvons tous penser que les arguments sont un tableau, mais si nous utilisons l'instance de tester, nous constaterons que les arguments ne sont pas un objet de tableau, bien qu'ils soient très similaires.