利用JS判断元素是否为数组的方法示例
导读:收集整理的这篇文章主要介绍了利用JS判断元素是否为数组的方法示例,觉得挺不错的,现在分享给大家,也给大家做个参考。 此处提供可供验证的数据类型let a = [1,2,3,4,5,6];...
收集整理的这篇文章主要介绍了利用JS判断元素是否为数组的方法示例,觉得挺不错的,现在分享给大家,也给大家做个参考。 此处提供可供验证的数据类型
let a = [1,2,3,4,5,6]; let b = [ { name: '张飞', tyPE: 'tank'} , { name: '关羽', type: 'soldier'} , { name: '刘备', type: 'shooter'} , ]; let c = 123; let d = 'www'; let e = { name: '安琪拉', type: 'mage'} ;
1.通过Array.isArray()
Array.isArray()能判断一个元素是否为数组,如果是就返回true,否则就返回false
console.LOG(Array.isArray(a)); // true console.log(Array.isArray(b)); // true console.log(Array.isArray(c)); // false console.log(Array.isArray(d)); // false console.log(Array.isArray(e)); // false
2.通过instanceof判断
instanceof运算符用于检测某个实例是否属于某个对象原型链中
console.log(a instanceof Array); // true console.log(b instanceof Array); // true console.log(c instanceof Array); // false console.log(d instanceof Array); // false console.log(e instanceof Array); // false
还可以用于判断对象
console.log(e instanceof Object); // true
判断是否为数组就是检测Arrray.PRototype属性是否存在于变量数组(a,b)的原型链上,显然a,b为数组,拥有Arrray.prototype属性,所以为true
3.通过对象构造函数的constructor判断
Obiect的每个实例都有构造函数constructor,保存着创建每个对象的函数
console.log(a.constructor === Array); // trueconsole.log(b.constructor === Array); // true
以下包含判断其它的数据类型验证
console.log(c.constructor === Number); // trueconsole.log(d.constructor === String); // trueconsole.log(e.constructor === Object); // true
4.通过Object.prototype.toString.call()判断
通过原型链查找调用
console.log(Object.prototype.toString.call(a) === '[object Array]'); // trueconsole.log(Object.prototype.toString.call(b) === '[object Array]'); // true
以下包含判断其它的数据类型验证
console.log(Object.prototype.toString.call(c) === '[object Number]'); // trueconsole.log(Object.prototype.toString.call(d) === '[object String]'); // trueconsole.log(Object.prototype.toString.call(e) === '[object Object]'); // true
5.通过对象原型链上的isPrototypeOf()判断
Array.prototype属性为Array的构造函数原型,里面包含有一个方法 isPrototypeOf() 用于测试一个对象是否存在于;另一个对象的原型链上。
console.log(Array.prototype.isPrototypeOf(a)); // true console.log(Array.prototype.isPrototypeOf(b)); // true console.log(Array.prototype.isPrototypeOf(c)); // false console.log(Array.prototype.isPrototypeOf(d)); // false console.log(Array.prototype.isPrototypeOf(e)); // false
总结
到此这篇关于利用JS判断元素是否为数组的文章就介绍到这了,更多相关JS判断元素为数组内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
您可能感兴趣的文章:- JavaScript判断数组是否包含指定元素的方法
- JS判断元素是否在数组内的实现代码
- JS判断数组里是否有重复元素的方法小结
- javascript 判断数组是否已包含了某个元素的函数
- JS实现判断数组是否包含某个元素示例
- 判断数组是否包含某个元素的js函数实现方法
- 编写js扩展方法判断一个数组中是否包含某个元素
- javascript如何判断数组内元素是否重复的方法集锦
- 使用js判断数组中是否包含某一元素(类似于php中的in_array())
- JS判断数组是否包含某元素实现方法汇总
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 利用JS判断元素是否为数组的方法示例
本文地址: https://pptw.com/jishu/593994.html