20_判断数据类型.html 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <!-- 判断数据类型 -->
  10. <script>
  11. // 判断数据类型
  12. let str = "hello";
  13. let num = 100;
  14. let bool = true;
  15. let nul = null;
  16. let unde = undefined;
  17. let obj = {a:1};
  18. let arr = [1,2,3];
  19. // 方法一:typeof 他不能判断 null、Array、Object
  20. // console.log(typeof str);
  21. // console.log(typeof num);
  22. // console.log(typeof bool);
  23. // console.log(typeof nul);
  24. // console.log(typeof unde);
  25. // console.log(typeof obj);
  26. // console.log(typeof arr);
  27. // 方法二:instanceof
  28. // console.log(str instanceof String);
  29. // console.log(num instanceof Number);
  30. // console.log(bool instanceof Boolean);
  31. // // 注意:null、undefined 不能用 instanceof 判断
  32. // // console.log(nul instanceof null);
  33. // // console.log(unde instanceof undefined);
  34. // console.log(obj instanceof Object);
  35. // console.log(arr instanceof Array);
  36. // 方法三:Object.prototype.toString.call() 可以判断任何类型
  37. // console.log(obj.toString());
  38. // console.log(Object.prototype.toString.call(str));
  39. // console.log(Object.prototype.toString.call(num));
  40. // console.log(Object.prototype.toString.call(bool));
  41. // console.log(Object.prototype.toString.call(nul));
  42. // console.log(Object.prototype.toString.call(unde));
  43. // console.log(Object.prototype.toString.call(obj));
  44. // console.log(Object.prototype.toString.call(arr));
  45. // 方法四:Array.isArray() 只能判断 Array 类型
  46. // console.log(Array.isArray(arr));
  47. // console.log(Array.isArray(obj));
  48. </script>
  49. </body>
  50. </html>