判断是否是数组

2023-10-27

整理了一些,留待自己复习用

1. instanceof

var a = {
    "name":'fangxiaoming',
    "age": 19,
}   
var b = [1,2,3,4];
console.log(a instanceof Array); //false
console.log(b instanceof Array); //true
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7



2.Array.isArray

Array.isArray([1, 2, 3]);  // true
Array.isArray({foo: 123}); // false
Array.isArray(undefined);  // false
  • 1
  • 2
  • 3
  • 4

3.原型链:constructor

var list = [1,2,3,4,5];
console.log(list.constructor === Array); //true
  • 1
  • 2

为什么 array.constructor 就等于 Array那? 
我们换一种方式创建数组就明了;

var mylist = new Array(1,2);                                                     
// 所以有:                                                                          
console.log( mylist.__proto__ === Array.prototype )                              
// 所以有:                                                                          
console.log( mylist.__proto__.constructor === Array.prototype.constructor );     
// 所以有:                                                                          
console.log( mylist.__proto__.constructor === Array );                           
// 所以有:                                                                          
console.log( mylist.constructor === Array );                                     
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

4.array特征

function isArray(obj){                                                                 
    return obj && //排除 null , undefined                                                
           typeof obj ==='object' && //排除number, string,boolean                        
           obj.propertyIsEnumerable(length); //排除object                                
                           
}                                                                                      
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

判断是否是数组 的相关文章

  • 生成UML类图之PowerDesigner16

    PowerDesigner软件介绍 PowerDesigner软件可以帮助我们生成源代码生成类与类之间的关系图 了解类与类关系 第一步 对PowerDesigner安装 破解与汉化 1 1 安装PowerDesigner16 首先 下载Po
  • 修改组件样式:css深度选择器

    深度选择器文档 Scoped CSS Vue Loader scss的深度选择器 v deep less的深度选择器 deep css的深度选择器 gt gt gt 用法 在css的类名之前直接添加深度选择器 示例 v deep box h
  • 2023年第二届网络安全国际会议(CSW 2023)

    会议简介 Brief Introduction 2023年第二届网络安全国际会议 CSW 2023 会议时间 2023年10月13日 15日 召开地点 中国 杭州 大会官网 www cybersecurityworkshop org 202
  • 17 【vue3自动导入配置】

    17 vue3自动导入配置 1 自动导入组件库组件 unplugin vue components 安装 pnpm install unplugin vue components D 然后将下面的代码添加到 Vite 的配置文件 Vite配
  • 一文了解InnoDB存储结构

    前言 InnoDB是一个将表中的数据存储到磁盘上的存储引擎 所以即使关机后我们的数据也不会丢失 而真正处理数据的过程是发生在内存中 所以需要把磁盘中的数据加载到内存中 而我们知道磁盘的读写速度非常慢 和内存读写差了几个数量级 所以InnoD
  • 20个面向前端开发人员的文档和指南(第4号)

    是时候再次开始学习 好吧 在这个行业中 我总是想那个时间 这是我撰写的此类文章中的第四篇 这可能是迄今为止最好的一篇 最近几个月 我偶然发现并收集了许多不同的指南和学习资源 这是最新一期 请享用 1 放大镜 这是 一些可视化功能 可帮助您了
  • Linux下top命令用法详解

    一 命令介绍 Linux top命令用于实时显示 process 进程 的动态 它用于监控正在运行系统负荷的信息 包括系统负载 CPU利用分布情况 内存使用 每个进程的资源占用情况等 使用权限 所有使用者 二 命令详解 在命令行下输入 to
  • 我们这一代人的机会是什么?

    大家好 我是苍何 今天作为专业嘉宾参观了 2023 年中国国际智能产业博览会 智博会 是一场以 智汇八方 博采众长 为主题的汇聚全球智能技术和产业创新的盛会 感触颇深 随着中国商业大模型的落地 各大模型百花齐放 落地深耕各大行业细分 toB
  • C#异步委托检测线程结束的方式

    1 异步委托开启多线程 通过BeginInvoke开启异步委托 BeginInvoke返回IAsyncResult类型的对象 可以通过这个对象获得线程状态 比如线程执行状态 TakesAWhileDelegate d1 TakesAWhil
  • Python数据存储:pickle模块的使用讲解

    在机器学习中 我们常常需要把训练好的模型存储起来 这样在进行决策时直接将模型读出 而不需要重新训练模型 这样就大大节约了时间 Python提供的pickle模块就很好地解决了这个问题 它可以序列化对象并保存到磁盘中 并在需要的时候读取出来
  • 后端开发, 接口幂等性是什么意思

    在后端开发中 接口的幂等性是指同一个请求的多次执行所产生的效果与执行一次的效果相同 简而言之 对于同一个接口请求 无论发送多少次 其对资源的状态修改结果都是一致的 幂等性在接口设计和实现中非常重要 特别是在涉及数据修改或资源状态变更的情况下
  • fiddle修改请求返回

    背景 访问某个URL地址 正常返回结果是 code 0 msg success rows US CA GB AR AU AT BE BR CL CN CO HR DK DO EG FI FR DE GR 而我们需要将response在返回之
  • Docker之docker run、docker exec、数据卷、Dockerfile

    文章目录 Docker之docker run docker exec 1 docker run命令介绍 2 docker run it name c1 centos 7 bin bash 3 docker run id name c2 ce
  • android28 startActivity启动流程分析(二)--ActivityStarter对象的获取和execute()

    ActivityManagerService startActivityAsUser gt ActivityStarter execute 在startActivityAsUser 方法中 先获取ActivityStarter实例 然后通过
  • 创建和管理表【DDL】

    目录 引入 一 创建和管理数据库 lt 一 gt 创建数据库 lt 二 gt 管理数据库之使用数据库 lt 三 gt 管理数据库之删除数据库 lt 四 gt 管理数据库之修改数据库 一般情况下不会改库 二 创建和管理数据表 lt 一 gt
  • java输入对话框_Java语言程序设计(五)从对话框获取输入及String类型

    1 String类型 char类型只能表示一个字符 为了表示一串字符 使用成为String 字符串 的数据类型 例如下述代码将消息声明为一个字符串 String message Welcome to Java String实际上与Syste
  • 敏捷开发“松结对编程”实践之五:代码检查篇(大型研发团队,学习型团队,139团队,师徒制度,代码审查)

    转载自 http blog csdn net cheny com article details 6594507 本文是 松结对编程 系列的第五篇 之一 之二 之三 之四 之五 之六 之七 之八 此系列之九及之后文章请见栏目总目录 松结对和
  • 基础 - JSON

    JSON JavaScript Object Notation 时下最流行的数据交换格式 特点 键和值 都必须包裹在引号中 语法 数据在键值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 格式 var JSON name WeWeZh
  • Java Future接口、Future模式理解

    Future接口介绍 在Java中 如果需要设定代码执行的最长时间 即超时 可以用Java线程池ExecutorService类配合Future接口来实现 Future接口是Java标准API的一部分 在java util concurre
  • google-java-app-engine

    http code google com appengine docs java tools uploadinganapp html Uploading the App java app 的说明 PS google已经统治了地球了

随机推荐

  • 如何解决二分类中的样本不平衡问题

    在搭建模型时 二分类中 经常会遇到目标变量的分类数量相差很大 比如分类是1的数量是5000 分类是0的数量是100 这样如果对数据的不平衡性不做处理 模型的效果也会很差 今天用一个案例来进行实操 1 案例目的 找出有资金需求的中小企业借贷户
  • 中手游上半年扭亏为盈,仙剑IP魅力不减?

    你也曾有过江湖梦吗 你也曾因 为国为民 为友为邻 的侠者心无处可安而苦恼吗 那么 仙剑 系列游戏或许可以成为你的灵魂寄托之所 而能让侠者的江湖梦具象化的幕后厂商 便是中手游 两年前 中手游斥巨资买下了仙剑IP的大陆地区权益 两年内 中手游不
  • Zookeeper集群启、停、状态查看脚本

    zk sh bin bash if lt 1 then echo Please type parameter like
  • 工业物联网与其他物联网应用有哪些不同?

    物联网在众多的细分领域里早已让相关的企业实现了颠覆性的转型 这些领域涵盖了消费物联网 智慧农业领域 医疗保健 制造业领域和公用事业领域等等 工业物联网作为物联网一个不容忽视的子集 它专注于解决工业应用中的特殊要求 如制造业 石油和天然气及公
  • [MySql]基本知识及表的创建

    目录 1 数据库的操作 2 常用的数据类型 2 1数值类型 2 2字符串类型 2 3日期类型 3 表的操作 4 使用示例 1 数据库的操作 show databases 显示当前数据库 create database database na
  • linux服务器安装mysql步骤详解

    还是按照菜鸟教程上的顺序进行安装 踩的坑还是比较少的 MySQL 安装 菜鸟教程 1 安装前 我们可以检测系统是否自带安装 MySQL rpm qa grep mysql 2 如果你系统有安装 那可以选择进行卸载 rpm e mysql 普
  • ModBus协议部分功能码设计与实现方法(QT环境)

    写在前面 资源 QT环境下实现资源 1 调研 1 1 什么是Modbus Modbus由MODICON公司于1979年开发 是一种工业现场总线协议标准 1996年施耐德公司推出基于以太网TCP IP的Modbus协议 ModbusTCP M
  • (9)目标检测_SSD的原理

    0主要参考原理来源 1 SSD 论文 代码 pytorch zonechen 博客园 2 python ssd目标检测 目标检测之SSD算法实现 Pytorch weixin 39805734的博客 CSDN博客 3 2 1SSD算法理论
  • Python教程:Python3.8了解差不多了,Python3.9新特性了解一下

    本期Python教程将解释 Python 3 9 中的新特性 而不是 3 8 官网目前也只有 3 8 的下载包 3 9 需要自己编译 Cpython 语言上的变化 1 使用 Python 进行相对导包的时候 import 出现异常时类型由原
  • 启动失败 Failed to determine a suitable driver class 问题解决方案

    1 问题描述 启动报错 Description Failed to configure a DataSource url attribute is not specified and no embedded datasource could
  • GFS故障解决

    一 问题描述 之前 两台数据库服务器安装了两个实例 共享磁盘阵列 通过ASM管理 日志文件和控制文件等 通过GFS实现共享存储文件同步 系统工作正常 某天加入第三个节点时失败 集群正常使用就没再管它 某日 数据库异常 重启操作系统后 GFS
  • Spring Boot整合Mybatis-Plus快速入门(二)

    之前快速搭建项目中 创建的类名与表名以及属性名都是一致的 所以mybatis plus可以根据类名以及属性名进行对应的操作 那么如果表名与属性名中不一致或属性名与列名不一致时我们应该怎么处理呢 这里mybatis plus为我们提供了很多注
  • 解决VMware14打开虚拟机黑屏问题

    最近把VMware升级到14 0之后 运行虚拟机之后无法显示图像 屏幕一团黑 但点击显示缩略图的时候是可以看到系统已经启动并在正常运行的 可以通过以下方法解决 以管理员身份打开命令提示符 输入命令 netsh winsock reset 重
  • 知识图谱(七)——事件抽取

    文章目录 一 任务概述 1 事件的定义 2 事件抽取的定义 3 相关评测和语料资源 二 限定域事件抽取 1 基于模式匹配的事件抽取方法 1 有监督的事件模式匹配 2 弱监督的事件模式匹配 3 优缺点 2 基于机器学习的事件抽取方法 1 有监
  • arm-none-eabi-gcc编译、链接选项详解

    1 mthumb 和 mthumb interwork mthumb 的意义是 使用这个编译选项生成的目标文件是Thumb指令的 目前还没有发现GNU编译器中有哪一个选项可以指定生成的目标文件是thumb 2的 相对应的 marm 的意义是
  • 多态,虚函数,纯虚函数

    多态 借助虚函数 基类指针既可以使用基类 父类 的成员函数 也可以使用派生类 子类 的成员函数 它有多种形态 或多种表现方式 这就是多态 简单说就是同一条语句可以执行不同的操作 看起来有不同表现方式 这就是多态 构成多态的条件 多态存在的三
  • .net 平台下的数学库math.net(一)

    Math NET的目标是为提供一款自身包含清晰框架的符号运算和数学运算 科学运算 它是C 开发的开源类库 Math NET含了一个支持线性代数的解析器 分析复杂微分 解方程等等功能 这个项目大部分采用的是MIT X11开源软件协议 目前该组
  • ConstraintLayout实用特性

    转载自赵彦军的博客 前言 在2016年的Google I O大会上 Google 发布了Android Studio 2 2预览版 同时也发布了Android 新的布局方案 ConstraintLayout 但是最近的一年也没有大规模的使用
  • 【ABviewer从零开始教学查看器篇②】关于打开文件的快捷方式

    ABViewer是一款高质量 高效率 低成本的多功能设计及工程文档管理工具 能为您提供全面的专业的浏览及编辑功能 同时支持30多种光栅和矢量图形格式 在小编看来 ABViewer是一款非常简单且实用的CAD文档查看与编辑器 对于使用小白可能
  • 判断是否是数组

    整理了一些 留待自己复习用 1 instanceof var a name fangxiaoming age 19 var b 1 2 3 4 console log a instanceof Array false console log