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

1. isArray

var arr = [1,2,3];

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

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

2. instanceof 

var arr = [1,2,3];

console.log( arr instanceof Array );

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

3. prototype

var arr = [1,2,3];

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

<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>

4. isPrototypeOf

var arr = [1,2,3];

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

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

5. constructor

var arr = [1,2,3];
console.log( arr.constructor.toString().indexOf('Array') > -1 );

<script>
var arr = [1,2,3];
console.log( arr.constructor.toString().indexOf('Array') > -1 );
</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/862037.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

QQ等级评估源码+软件

今天&#xff0c;我将和大家探讨一个与直播、撸礼物相关的主题&#xff0c;它涉及到的是一种特殊的软件及其源码——QQ等级评估工具。在我们的生活中&#xff0c;直播已经成为了一种越来越流行的娱乐方式。不论是音乐会、电子竞技&#xff0c;还是日常生活分享&#xff0c;你都…

7、广告-流量对接

在程序化广告中&#xff0c;技术的应用至关重要&#xff0c;尤其是流量对接的过程。本章详细介绍DSP与AdX/SSP对接、Trading Desk对接DSP以及PDB对接的技术细节和流程。 流量对接&#xff08;Traffic Integration&#xff09; 流量对接是程序化广告投放中至关重要的一环。它包…

ubuntu22.04 怎么查看visio 的文件

要在Ubuntu 22.04上查看Visio文件&#xff0c;可以使用以下方法之一&#xff1a; 1. 使用LibreOffice Draw LibreOffice Draw可以打开Microsoft Visio文件&#xff08;.vsd和.vsdx&#xff09;。默认情况下&#xff0c;LibreOffice可能已经安装在您的Ubuntu系统上。如果没有&…

基于PHP的初中数学题库管理系统

有需要请加文章底部Q哦 可远程调试 基于PHP的初中数学题库管理系统 一 介绍 此初中数学题库管理系统基于原生PHP开发&#xff0c;数据库mysql&#xff0c;系统角色分为学生&#xff0c;教师和管理员。(附带参考设计文档) 技术栈&#xff1a;phpmysqlphpstudyvscode 二 功能 …

Unity:使用Texture2D动态创建的图像无法正常显示 / 修改图像后未生效

开发中遇到需要动态绘制图像的需求&#xff0c;前后文代码如下所示&#xff1a; Texture2D newImageTexture new Texture2D(width, height); Color32[] newImagePixels new Color32[height * width];for (int y 0; y < height ; y) {for (int x 0; x < width; x){if…

flask的locked_cached_property

下面是一个关于 locked_cached_property 装饰器的详细教程。这个装饰器将一个方法转换为一个惰性属性&#xff0c;在第一次访问时计算其值&#xff0c;并在随后的访问中缓存该值。同时&#xff0c;它在多线程环境中是线程安全的。 教程&#xff1a;理解和使用 locked_cached_p…

多选项卡的shiny

下面是一个包含多个选项卡的 Shiny 应用程序示例代码。在这个例子中&#xff0c;我们创建了一个包含三个选项卡的 Shiny 应用程序&#xff0c;每个选项卡中都有不同的内容。 library(shiny)# Define UI ui <- fluidPage(titlePanel("多选项卡 Shiny 应用"),tabse…

【深度学习】python之人工智能应用篇--跨模态生成技术

跨模态生成技术概述 跨模态生成技术是一种将不同模态的数据&#xff08;如文本、图像、音频、视频等&#xff09;进行融合和转换的技术。其目标是通过将一个模态的数据作为输入&#xff0c;生成与之对应的另一个模态的输出。这种技术对于突破单一模态的局限性&#xff0c;提高…

【图书推荐】CPython设计与实现“适合所有Python工程师阅读的书籍”

目录 一、图书推荐 |【CPython设计与实现】 1.1、书籍介绍 1.2、内容简介 1.3、适合哪些人阅读 1.4、作者译者简介 1.5、购买链接 一、图书推荐 |【CPython设计与实现】 "深入Python核心&#xff0c;揭秘CPython的设计智慧&#xff01;&#x1f4d6; 对于每一位热衷…

ROS在汽车智能驾驶中能用到吗?

ROS&#xff08;Robot Operating System&#xff0c;机器人操作系统&#xff09;在汽车智能驾驶中确实得到了广泛应用。它是一个专为机器人软件开发设计的灵活框架&#xff0c;尤其适合于自动驾驶汽车的研发。ROS在智能驾驶中的应用主要包括以下几个方面&#xff1a; 1. **传感…

如何使用PNP Powershell连接21vSharePoint Online

在我们使用PnP PowerShell的时候&#xff0c;如果想使用自己的账户通过Connect-PnPOnline 连接Global SharePoint Online时是十分方便的&#xff0c;可以通过一下几种方式 Credentials Connect-PnPOnline -Url "contoso.sharepoint.com" -Credentials (Get-Credenti…

怀庄之醉醉风流和醉逍遥有什么区别?哪一款更好喝

醉风流和醉逍遥是贵州怀庄酒业集团有限公司旗下怀庄之醉直营品牌的产品&#xff0c;两者主要在价格、酿造工艺和口感体验等方面有所区别&#xff1a; 价格 醉风流&#xff1a;参考价888元/瓶。 醉逍遥&#xff1a;参考价598元/瓶。 酿造工艺 醉风流&#xff1a;采用高粱、…

宏观经济学

SБ_Итоговая аттестация_Макроэкономика 你好&#xff0c;Вэйдун。当你提交此表单后&#xff0c;拥有者将会看到你的姓名和电子邮件地址。 1.GDP 等于 12000 个货币单位&#xff0c;折旧 - 1200 个货币单位&#xff0c;转移支付 - 750 …

WPF/C#:BusinessLayerValidation

BusinessLayerValidation介绍 BusinessLayerValidation&#xff0c;即业务层验证&#xff0c;是指在软件应用程序的业务逻辑层&#xff08;Business Layer&#xff09;中执行的验证过程。业务逻辑层是应用程序架构中的一个关键部分&#xff0c;负责处理与业务规则和逻辑相关的…

【C++ 拓展】ifstream、ofstream、fstream的使用

文章目录 前言一、istream1.1 ifstream - 输入流1.2 具体使用构造函数成员函数open 函数&#xff1a;is_open 函数&#xff1a;close 函数&#xff1a;operator>> 重载&#xff1a;rdbuf 函数peek 函数read 函数getline 函数ignore 函数seekg 函数tellg 函数 二、ofstrea…

《人生苦短,我用python·五》pybind11关于继承,多态的使用

在使用 pybind11 进行 Python 和 C 之间的交互时&#xff0c;涉及到继承和多态的情况&#xff0c;需要注意几个关键点和技巧&#xff1a; 在 C 中定义基类和派生类 首先&#xff0c;在 C 中定义你的基类和派生类。例如&#xff0c;有一个简单的基类 Shape 和派生类 Circle&…

关于区块链技术实现的寄卖行的抵押平台建设方案

关于区块链技术实现的寄卖行抵押平台建设方案 一、项目背景与目标 随着数字化时代的快速发展&#xff0c;金融行业对安全性和效率的要求日益提高。寄卖行作为一种传统金融服务机构&#xff0c;也面临着业务模式创新和服务效率提升的挑战。本方案旨在利用区块链技术&#xff0…

【Java Web】Vite构建前端目录结构

目录 一、Vite概述 二、Vite构建Vue3工程化项目 三、ViteVue3项目目录结构 四、ViteVue3项目组件&#xff08;SFC入门&#xff09; 五、ViteVue3样式导入方式 六、ViteVue3响应式数据和setup语法糖 一、Vite概述 Vite是一种新型前端构建工具,能够显著提升前端开发体验;Vite结合…

Arduino IDE下载、安装和配置

文章开始先把我自己网盘里的安装包分享给大家&#xff0c;链接&#xff1a;https://pan.baidu.com/s/1cb2_3m0LnuSKLnWP_YoWPw?pwdwwww 提取码&#xff1a;wwww 里面一个是Arduino IDE的安装包&#xff0c;另一个是即将发布的版本。 第一个安装包打开直接按照我的步骤安装就…

【第一周】认识小程序

目录 认识小程序发展历史发展前景发展优势个人企业/创业 账号申请开发工具下载流程使用说明 协作项目交流收益渠道 认识小程序 发展历史 微信小程序自2016年首次提出以来&#xff0c;经历了快速的发展和完善过程&#xff0c;以下是其主要发展历史节点&#xff1a; 2016年1月…