JavaScript 判断数据类型的4种方法

yizhihongxing

下面是详细讲解“JavaScript 判断数据类型的4种方法”的完整攻略。

方法一:typeof

typeof 运算符返回一个值的数据类型(字符串形式),包括:"undefined"、"boolean"、"number"、"string"、"object"和"function"。

typeof 123; // "number"
typeof "hello"; // "string"
typeof true; // "boolean"
typeof undefined; // "undefined"
typeof null; // "object",这是因为null被认为是一个特殊的空对象引用
typeof []; // "object"
typeof {}; // "object"
typeof function(){}; // "function"

方法二:instanceof

instanceof 运算符用于测试对象在其原型链中是否存在一个构造函数。instanceof 操作符用来检测 constructor.prototype 是否存在于参数 object 的原型链上。

var arr = [];
arr instanceof Array; // true
var obj = {};
obj instanceof Object; //true

方法三:Object.prototype.toString.call()

javascript 中,可以通过 Object.prototype.toString 方法来判断数据类型,因为该方法能够返回以 "[object className]" 形式表示的数据类型。

Object.prototype.toString.call("hello world"); // "[object String]"
Object.prototype.toString.call(233); // "[object Number]"
Object.prototype.toString.call(false); // "[object Boolean]"
Object.prototype.toString.call({}); // "[object Object]"
Object.prototype.toString.call(function(){}); // "[object Function]"

方法四:constructor

每个实例都有一个 constructor 属性,并指向创建这个实例的构造函数。

"hello".constructor == String; // true
(233).constructor == Number; // true
(false).constructor == Boolean; // true
({}).constructor == Object; // true
[].constructor == Array; // true

上述就是 JavaScript 判断数据类型的4种方法的完整攻略,以上四种方法都有各自的典型场景和特点,具体使用时根据需求选择对应的方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript 判断数据类型的4种方法 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • JS实现的按钮点击颜色切换功能示例

    我来为您讲解一下实现JS按钮点击颜色切换功能的完整攻略。 准备工作 在开始实现JS按钮点击颜色切换功能前,我们需要做一些准备工作: 在HTML文件中添加按钮,并为按钮添加ID或Class属性,方便JS调用。 编写CSS样式。 引入JS代码文件或写在HTML文件内部。 实现思路 思路很简单,当按钮被点击时,JS监听到了这个点击事件,然后根据当前节点的class…

    JavaScript 2023年6月10日
    00
  • 基于Cesium实现拖拽3D模型的示例代码

    下面是关于基于Cesium实现拖拽3D模型的示例代码的攻略。 1. 引入相关依赖 为了使用Cesium,我们需要先将Cesium的JavaScript和CSS文件导入到页面当中。在这个示例中,我们使用的是Cesium 1.75版本,您可以在官方网站上下载相应版本的文件并引入到HTML文件中: <!–引入Cesium的CSS和JavaScript文件-…

    JavaScript 2023年6月11日
    00
  • 详解JavaScript ES6中的Generator

    详解JavaScript ES6中的Generator Generator是ES6中一种新的函数类型,其最显著的特点就是可以暂停执行,后续又可以从暂停的位置继续执行。本文将介绍Generator的语法、使用方法和常见应用场景。 语法 Generator函数可以使用function*语法定义,函数内部使用yield关键字可以暂停函数的执行,返回yield后面的…

    JavaScript 2023年5月28日
    00
  • javascript 系统文件夹文件操作及参数介绍

    下面是关于“javascript 系统文件夹文件操作及参数介绍”的完整攻略。 标题 JavaScript 系统文件夹文件操作 介绍 JavaScript 可以通过 Node.js 模块 fs 来操作系统文件夹和文件。其中,fs 模块提供了一系列的 API,让开发者能够以代码的方式对文件进行读写、更改、创建、删除等操作。 API 参数介绍 以下为几个常用的 A…

    JavaScript 2023年5月27日
    00
  • 使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法

    当我们在Asp.net中使用JavaScript脚本时,有时候需要使用JavaScript来改变Checkbox控件的Enable属性,但是发现无法直接操作。这是由于Asp.net默认会将Checkbox渲染成一个带有许多内部属性的HTML控件。 为了解决这个问题,我们可以通过以下两种方法来实现改变Checkbox控件的Enable属性: 方法一:通过查找H…

    JavaScript 2023年6月11日
    00
  • javascript canvas时钟模拟器

    下面是“JavaScript Canvas时钟模拟器”的完整攻略。 一、准备工作 在进入具体的代码实现前,我们需要先进行一些准备工作。 1. 创建HTML结构 我们需要创建一个HTML文件,并在文件中创建一个canvas元素。canvas元素将用于绘制时钟。 示例代码: <!DOCTYPE html> <html> <head&…

    JavaScript 2023年6月11日
    00
  • VuePress使用Algolia实现全文搜索

    下面我将为你详细讲解“VuePress使用Algolia实现全文搜索”的完整攻略。 什么是VuePress? VuePress是一款基于Vue.js的静态网站生成器,它基于Markdown文件进行内容编写,具有文档编写、主题定制、SEO优化、全文搜索等功能,为个人博客或技术文档提供了一种快速搭建的方案。 什么是Algolia? Algolia是一款强大的全文…

    JavaScript 2023年6月11日
    00
  • JS实现字符串转日期并比较大小实例分析

    当我们需要比较两个日期的大小时,通常需要将字符串类型的日期转换为JavaScript中的Date对象,然后使用比较运算符进行比较。下面是JS实现字符串转日期并比较大小的完整攻略。 1. 将字符串类型的日期转换为Date对象 可以使用Date对象的构造函数并传入字符串类型的日期来创建一个Date对象。 var dateString = "2022-0…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部