javascript 类型判断

前言:

新来的同事问我该怎么判断未定义的变量是否存在,第一念头是a != undefined,但是这个显然是不对的,应该使用typeof检测

typeof是一个运算符,运算数可以是任何类型,返回值是一个字符串。

  • undefined - 如果变量是 Undefined 类型的
  • boolean    - 如果变量是 Boolean 类型的
  • number    - 如果变量是 Number 类型的
  • string       - 如果变量是 String 类型的
  • object      - 如果变量是一种引用类型或 Null 类型的

注:这里又涉及javascript5大数据类型,查找资料时,在ECMAScript和javascript的关系上又杠上了......

看了javascript的实现后,我的理解是ECMAScript就是一个标准,制定了各种规范,定义了脚本语言的所有属性、方法和对象。而javascript是由ECMAScript、DOM和BOM组成。

DOM(文档对象模型)是 HTML 和 XML 的应用程序接口(API)。DOM 将把整个页面规划成由节点层级构成的文档。

BOM 主要处理浏览器窗口和框架,不过通常浏览器特定的 JavaScript 扩展都被看做 BOM 的一部分。这些扩展包括:

  • 弹出新的浏览器窗口
  • 移动、关闭浏览器窗口以及调整窗口大小
  • 提供 Web 浏览器详细信息的定位对象
  • 提供用户屏幕分辨率详细信息的屏幕对象
  • 对 cookie 的支持

IE 扩展了 BOM,加入了 ActiveXObject 类,可以通过 JavaScript 实例化 ActiveX 对象

参考链接:

[译]JavaScript:typeof的用途

javascript的实现

时间: 2024-10-10 10:36:44

javascript 类型判断的相关文章

JavaScript类型判断

JavaScript的数据类型可以分为:标准类型和对象类型. 标准类型有:undefined Null Boolean Date Number Object 对象类型(构造器类型)有:Boolean Date Number Object Array Date Error Function RegExp 用来判断数据类型的一般有四种方式,分别是: 1.typeof 可以识别标准类型(Null除外) 不能识别对象类型(Function除外) 2.Prototype.toString() 可以识别标准

JavaScript类型判断详解(Object.prototype.toString.call()方法进行数据类型的可靠判断)

前言 在编写一些类库中,我们经常需要判断一些未知的用户的输入和配置,故而需要进行一系列的类型判断.故而总结下JS是如何进行类型判断的 typeof typeof操作符返回一个字符串,表示未经计算的操作数的类型:该运算符数据类型(返回字符串,对应列表如图) typeof undefined = undefined typeof Null = object typeof Boolean = boolean typeof Number = number typeof String = string t

javascript类型判断方法

判断javascript中的类型,共有四种常用的方法 var a=6; var b="str"; var c=true; var arr=[]; typeof 用于基本类型的判断 1.typeof最好用于基本类型的判断,返回类型名(小写). 例外 typeof null==="object" //true typeof function(){}==="function" //true 2.typeof返回的是字符串 3.对变量执行typeof操作

【javaScript经验】javaScript类型判断

原生JS提供了typeof操作符来判断类型,判断基本类型时没问题,但当判断复杂类型时便有点不尽人意. 基本类型有哪些? 众说纷纭,争议的是null和function算不算基本类型?个人觉得能被typeof出正确类型的都是基本类型,来看以下代码: /*基本类型*/ alert(typeof nudefined);//输出 "nudefined" alert(typeof function(){});//输出 "function" alert(typeof "

常用javascript类型判断

//判断是不是数组 console.log(Object.prototype.toString.apply([])==='[object Array]') //判断是不是函数 console.log(Object.prototype.toString.apply(function(){})==='[object Function]') //判断是不是null console.log(Object.prototype.toString.apply(null)==='[object Null]')

(转)JavaScript中判断对象类型的种种方法

我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一个说明运算数类型的字符串.如:"number","string","boolean","object","function","undefined"(可用于判断变量是否存在). 但 type

JavaScript中判断变量类型最简洁的实现方法(#################################)

这篇文章主要介绍了JavaScript中判断整字类型最简洁的实现方法,本文给出多个判断整数的方法,最后总结出一个最短.最简洁的实现方法,需要的朋友可以参考下 我们知道JavaScript提供了typeof运算符,因此最容易想到的是用typeof来判断是否是number类型. 复制代码代码如下: 1 2 3 function isNumber(obj) {     return typeof obj === 'number' } 这个函数对于整数和浮点数都没有问题,但对于NaN值也返回true这让

【JavaScript】Object.prototype.toString.call()进行类型判断

权声明:本文为博主原创文章,未经博主允许不得转载. [javascript] view plain copy print? op = Object.prototype, ostring = op.toString, ... function isFunction(it) { return ostring.call(it) === '[object Function]'; } function isArray(it) { return ostring.call(it) === '[object A

JavaScript客户端判断文件类型及大小

<html><head><title>潜水式无堵塞排污泵</title> <meta http-equiv="content-type" content="text/html;charset=gb2312"></head><body>以下是一个客户端控制file上传图片类型和大小的示例(注意:由于是客户端限制,所以用户可以绕过这个限制):<script language=&qu