黑马程序员技术交流社区

标题: 【广州前端】- JS中判断变量类型是否为数组的4种检测方法 [打印本页]

作者: AngularBaby    时间: 2017-12-7 15:21
标题: 【广州前端】- JS中判断变量类型是否为数组的4种检测方法
本帖最后由 AngularBaby 于 2017-12-21 18:47 编辑

1. 使用instanceof运算符
[JavaScript] 纯文本查看 复制代码

var arr = [1,23,4];
var x = 9
console.log(arr instanceof Array);  // true
console.log(x instanceof Array);    // false


2. 检测数组最准确的方法(也是判断是不是对象的最准确的方法)
[JavaScript] 纯文本查看 复制代码

var arr = [1,23,4];
var obj = {};

Object.prototype.toString.call(arr).slice(8,-1);    // Array
Object.prototype.toString.call(obj).slice(8,-1);    // Object


3. 使用Array.isArray(arr);
[JavaScript] 纯文本查看 复制代码
  
var arr = [1,23,4];
var obj = {};
console.log(Array.isArray(arr)); // true
console.log(Array.isArray(obj)); // false


4. 使用arr.constructor == Array;
[JavaScript] 纯文本查看 复制代码

var arr = [1,23,4];
var obj = {};
console.log(arr.constructor == Array); // true
console.log(obj.constructor == Array); // false



点击查看更多精彩前端资源



作者: AreYouGlad    时间: 2017-12-7 16:06





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2