gpt4 book ai didi

利用JS判断元素是否为数组的方法示例

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章利用JS判断元素是否为数组的方法示例由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

此处提供可供验证的数据类型 。

?
1
2
3
4
5
6
7
8
9
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 。

?
1
2
3
4
5
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运算符用于检测某个实例是否属于某个对象原型链中 。

?
1
2
3
4
5
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

还可以用于判断对象 。

?
1
console.log(e instanceof Object); // true

判断是否为数组就是检测Arrray.prototype属性是否存在于变量数组(a,b)的原型链上,显然a,b为数组,拥有Arrray.prototype属性,所以为true 。

3.通过对象构造函数的constructor判断 。

Obiect的每个实例都有构造函数constructor,保存着创建每个对象的函数 。

利用JS判断元素是否为数组的方法示例

?
1
2
console.log(a.constructor === Array); // true
console.log(b.constructor === Array); // true

以下包含判断其它的数据类型验证 。

?
1
2
3
console.log(c.constructor === Number); // true
console.log(d.constructor === String); // true
console.log(e.constructor === Object); // true

4.通过Object.prototype.toString.call()判断 。

通过原型链查找调用 。

?
1
2
console.log(Object.prototype.toString.call(a) === '[object Array]' ); // true
console.log(Object.prototype.toString.call(b) === '[object Array]' ); // true

以下包含判断其它的数据类型验证 。

?
1
2
3
console.log(Object.prototype.toString.call(c) === '[object Number]' ); // true
console.log(Object.prototype.toString.call(d) === '[object String]' ); // true
console.log(Object.prototype.toString.call(e) === '[object Object]' ); // true

5.通过对象原型链上的isPrototypeOf()判断 。

Array.prototype属性为Array的构造函数原型,里面包含有一个方法 isPrototypeOf() 用于测试一个对象是否存在于;另一个对象的原型链上.

?
1
2
3
4
5
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判断元素为数组内容请搜索我以前的文章或继续浏览下面的相关文章希望大家以后多多支持我! 。

原文链接:https://segmentfault.com/a/1190000038889855 。

最后此篇关于利用JS判断元素是否为数组的方法示例的文章就讲到这里了,如果你想了解更多关于利用JS判断元素是否为数组的方法示例的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com