JS array数组检测方式解析


Posted in Javascript onMay 19, 2020

typeof

var arr = [1,2,3];
console.log(typeof arr);//'object'

数组的本质是一种特殊的对象,所以返回'object'。typeof运算符只能用来区分原始类型和对象类型,所以无法具体的检测出Array

instanceof

var arr = [1,2,3];
console.log(arr instanceof Array);//true

如果存在不同的全局环境,就会存在不同版本的Array构造函数,如果从一个框架向另一个框架传入一个数组,那么传入的数组与在第二个框架中原生创建的数组分别具有各自不同的构造函数,这时候使用instanceof检测就不准确了

toString

通过引用Object的toString()方法来检查对象的类属性,对数组而言该属性的值总是"Array"

function type(obj){
  return Object.prototype.toString.call(obj).slice(8,-1).toLowerCase();
}
console.log(type(arr));//'array'

isArray

ECMAScript5新增了Array.isArray()方法

console.log(Array.isArray([]));//true

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js判断上传文件类型判断FileUpload文件类型代码
May 20 Javascript
详细解读AngularJS中的表单验证编程
Jun 19 Javascript
Bootstrap每天必学之弹出框(Popover)插件
Apr 25 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
Jun 24 Javascript
jQuery内存泄露解决办法
Dec 13 Javascript
js 原生判断内容区域是否滚动到底部的实例代码
Nov 15 Javascript
基于JSONP原理解析(推荐)
Dec 04 Javascript
高性能的javascript之加载顺序与执行原理篇
Jan 14 Javascript
JS实现读取xml内容并输出到div中的方法示例
Apr 19 Javascript
jQuery中的$是什么意思及 $. 和 $().的区别
Apr 20 jQuery
vue 实现走马灯效果
Oct 28 Javascript
微信小程序button标签open-type属性原理解析
Jan 21 Javascript
基于JS实现table导出Excel并保留样式
May 19 #Javascript
vue利用全局导航守卫作登录后跳转到未登录前指定页面的实例代码
May 19 #Javascript
jQuery 函数实例分析【函数声明、函数表达式、匿名函数等】
May 19 #jQuery
JS加载解析Markdown文档过程详解
May 19 #Javascript
bootstrapValidator表单校验、更改状态、新增、移除校验字段的实例代码
May 19 #Javascript
jQuery 常用特效实例小结【显示与隐藏、淡入淡出、滑动、动画等】
May 19 #jQuery
jQuery AJAX应用实例总结
May 19 #jQuery
You might like
php抽奖小程序的实现代码
2013/06/18 PHP
php判断数组中是否存在指定键(key)的方法
2015/03/17 PHP
PHP优化之批量操作MySQL实例分析
2020/04/23 PHP
php的lavarel框架中join和orWhere的用法
2020/12/28 PHP
innerhtml用法 innertext用法 以及innerHTML与innertext的区别
2009/10/26 Javascript
extjs之去除s.gif的影响
2010/12/25 Javascript
CSS(js)限制页面显示的文本字符长度
2012/12/27 Javascript
面向对象设计模式的核心法则
2013/11/10 Javascript
javascript eval(func())使用示例
2013/12/05 Javascript
jQuery中has()方法用法实例
2015/01/06 Javascript
javascript+html5实现仿flash滚动播放图片的方法
2015/04/27 Javascript
node.js下LDAP查询实例分享
2015/09/30 Javascript
js省市联动效果完整实例代码
2015/12/09 Javascript
详解Angularjs filter过滤器
2016/02/06 Javascript
Bootstrap三种表单布局的使用方法
2016/06/21 Javascript
浅谈jquery.form.js的ajaxSubmit和ajaxForm的使用
2016/09/09 Javascript
AngularJS表格样式简单设置方法示例
2017/03/03 Javascript
Node.js实现连接mysql数据库功能示例
2017/09/15 Javascript
浅析Vue中method与computed的区别
2018/03/06 Javascript
React 无状态组件(Stateless Component) 与高阶组件
2018/08/14 Javascript
node.js实现微信开发之获取用户授权
2019/03/18 Javascript
如何使用CSS3+JQuery实现悬浮墙式菜单
2019/06/18 jQuery
[03:24]CDEC.Y赛前采访 努力备战2016国际邀请赛中国区预选赛
2016/06/25 DOTA
[02:05]DOTA2完美大师赛趣味视频之看我表演
2017/11/18 DOTA
python 从远程服务器下载日志文件的程序
2013/02/10 Python
python文档字符串(函数使用说明)使用详解
2019/07/30 Python
Python 异步协程函数原理及实例详解
2019/11/13 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
2019/12/06 Python
python os模块在系统管理中的应用
2020/06/22 Python
宝塔面板出现“open_basedir restriction in effect. ”的解决方法
2021/03/14 PHP
奥斯汀独木舟和皮划艇:Austin Canoe & Kayak
2018/05/22 全球购物
大学生文员专业个人求职信范文
2014/01/05 职场文书
努力工作保证书
2015/02/28 职场文书
五年级语文教学反思
2016/03/03 职场文书
学校运动会开幕词
2016/03/03 职场文书
基于python制作简易版学生信息管理系统
2021/04/20 Python