JS面试题2——判断变量是不是数组有哪些方法

  1. isArray

var arr = [1,2,3];

console.log( Array.isArray( arr ) );

javascript 复制代码
<script>
var arr = [1,2,3];
var str = '你好';
console.log( Array.isArray( arr ) ); // true
console.log( Array.isArray( str ) ); // false
</script>
  1. instanceof

var arr = [1,2,3];

console.log( arr instanceof Array );

javascript 复制代码
<script>
var arr = [1,2,3];
var str = '你好';
console.log( arr instanceof Array ); // true
console.log( str instanceof Array ) ); // false
</script>
  1. prototype

var arr = [1,2,3];

console.log( typeof Object.prototype.toString.call(arr).indexOf(Array) != -1 );

javascript 复制代码
<script>
var arr = [1,2,3];
var str = '你好';
console.log( Object.prototype.toString.call(arr) ); // 打印出 [object Array]
console.log( typeof Object.prototype.toString.call(arr) ); // 打印出string
console.log( typeof Object.prototype.toString.call(arr).indexOf(Array) ); // 如果不是-1,就证明是数组
console.log( typeof Object.prototype.toString.call(arr).indexOf(Array) != -1 ); // 打印true或false
</script>
  1. isPrototypeOf

var arr = [1,2,3];

console.log( Array.prototype.isPrototypeOf(arr) );

javascript 复制代码
<script>
var arr = [1,2,3];
var str = '你好';
console.log( Array.prototype.isPrototypeOf(arr) );
</script>
  1. constructor

var arr = [1,2,3];

console.log( arr.constructor.toString().indexOf('Array') > -1 );

javascript 复制代码
<script>
var arr = [1,2,3];
console.log( arr.constructor.toString().indexOf('Array') > -1 );
</script>
相关推荐
xiaotao1314 小时前
第九章:Vite API 参考手册
前端·vite·前端打包
午安~婉4 小时前
Electron桌面应用聊天(续)
前端·javascript·electron
lly2024064 小时前
C 标准库 - `<stdio.h>`
开发语言
沫璃染墨4 小时前
C++ string 从入门到精通:构造、迭代器、容量接口全解析
c语言·开发语言·c++
jwn9994 小时前
Laravel6.x核心特性全解析
开发语言·php·laravel
迷藏4944 小时前
**发散创新:基于Rust实现的开源合规权限管理框架设计与实践**在现代软件架构中,**权限控制(RBAC)** 已成为保障
java·开发语言·python·rust·开源
彧翎Pro4 小时前
基于 RO1 noetic 配置 robosense Helios 32(速腾) & xsense mti 300
前端·jvm
功德+n4 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
明日清晨4 小时前
python扫码登录dy
开发语言·python
小码哥_常5 小时前
解锁系统设置新姿势:Activity嵌入全解析
前端