18_判断数据类型.html 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  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. <script>
  10. // 基本数据类型
  11. var num = 1;
  12. var str = 'hello';
  13. var bool = true;
  14. var oNull = null;
  15. var oUndefined = undefined;
  16. // 引用数据类型
  17. var arr = [1,2,3,4,5];
  18. var obj = {};
  19. var foo = function(){};
  20. // typeof 可以判断基本数据类型 返回字符串
  21. // console.log(typeof num);
  22. // console.log(typeof str);
  23. // console.log(typeof bool);
  24. // console.log(typeof oNull);
  25. // console.log(typeof oUndefined);
  26. // console.log(typeof arr);
  27. // console.log(typeof obj);
  28. // console.log(typeof foo);
  29. // instanceof 可以判断引用数据类型 返回布尔值
  30. // console.log(arr instanceof Array);
  31. // console.log(obj instanceof Object);
  32. // console.log(foo instanceof Function);
  33. // console.log(num instanceof Number);
  34. // cunstructor 可以判断引用数据类型 返回构造函数
  35. // Array, Object, Function, Number, String, Boolean
  36. // console.log(arr.constructor);
  37. // console.log(obj.constructor);
  38. // console.log(foo.constructor);
  39. // console.log(num.constructor);
  40. // console.log(str.constructor);
  41. // Object.prototype.toString.call() 可以判断所有数据类型 返回字符串
  42. console.log(Object.prototype.toString.call(num));
  43. console.log(Object.prototype.toString.call(str));
  44. console.log(Object.prototype.toString.call(bool));
  45. console.log(Object.prototype.toString.call(oNull));
  46. console.log(Object.prototype.toString.call(oUndefined));
  47. console.log(Object.prototype.toString.call(arr));
  48. console.log(Object.prototype.toString.call(obj));
  49. console.log(Object.prototype.toString.call(foo));
  50. </script>
  51. </body>
  52. </html>