Maison >interface Web >js tutoriel >Une brève discussion sur les techniques instanceof et typeof_javascript en javascript
Par exempleof et typeof, je les ai parfois utilisés auparavant, en particulier typeof, qui est relativement plus utilisé. Aujourd'hui, lorsque j'ai étudié le code source ext, instanceof a été utilisé à de nombreux endroits. mais ils devraient également être inclus. Différences, j'ai lu certains articles en ligne et j'ai une certaine compréhension de la relation entre eux.
Instanceof et typeof peuvent tous deux être utilisés pour déterminer si une variable est vide ou de quel type de variable il s'agit.
Typeof est utilisé pour obtenir le type d'une variable. Typeof ne peut généralement renvoyer que les résultats suivants : nombre, booléen, chaîne, fonction, objet, non défini. Nous pouvons utiliser typeof pour savoir si une variable existe, comme if(typeof a!="undefined"){}, au lieu d'utiliser if(a) car si a n'existe pas (non déclaré), une erreur se produira pour Array. , Null Lors de l'utilisation de typeof pour des objets spéciaux, l'objet sera toujours renvoyé. C'est la limitation de typeof.
Si nous voulons savoir si un objet est un tableau, ou déterminer si une variable est une instance d'un objet, nous devons utiliser instanceof. instanceof est utilisé pour déterminer si une variable est une instance d'un objet. Par exemple, var a=new Array(); alert(a instanceof Array renverra true, et alert(a instanceof Object) renverra également true ; c'est parce que Array est une sous-classe d'objet. Autre exemple : la fonction test(){};var a=new test();alert(a instanceof test) renverra true.
En ce qui concerne instanceof, nous devons insérer un problème supplémentaire, celui des arguments de la fonction. Nous pouvons tous penser que les arguments sont un tableau, mais si vous utilisez instanceof pour tester, vous constaterez que les arguments ne sont pas un tableau. Objet tableau, même s'il semble similaire.