`
wangyanlong0107
  • 浏览: 486522 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

【转】JS instanceof 判断类型 问题

    博客分类:
  • js
 
阅读更多

判断变量类型:一般情况下,可以先用typeof 运算符,如果结果是"object",再用instanceof来判断;
 特别的地方是:
    instanceof不认为原始类型值的变量是对象,

   1var temp="a string for test";   
   
2//下面这句返回"string"   
   3. alert( typeof temp);   
   
4//下面这句返回"false"   
   5. alert(temp instanceof String);   
   
6.   
   
7//看看Ext内部实现,判断String类型  
   8. if(  typeof temp== "string"){
   9. }

其他附加问题:
  • null:表示尚未存在的对象,注意,尽管尚未存在,也是个对象啊,所以用typeof检测一个null值变量的结果是Object;不过,为了便于写if语句,在js中,"undefined==false", "null=false", 因此,"undefined==null"。
  • 整数:最容易犯的错误就是,忘了070其实是个八进制数,相当于十进制的56;
  • 浮点数:“在进行运算之前,真正存储的是字符串”——这应该是解释执行的本质决定的吧——直接后果是,alert(0.8)这样的语句可以正确输出,而alert(2*0.8)的输出就成了"2.40000000000000003"
  • 数字边界: 数字有几个边界值,分别是Number.MAX_VALUE(最大值), Number.MIN_VALUE(最小值), Number.POSITIVE_INFINITY(正无穷), Number.NEGATIVE_INFINITY(负无穷), Infinity(无穷大,-Infinity,这个有点莫名其妙,不知道为啥又搞出一套);特别地,还有一个isFinit(iNumber)函数来判 断数字是否为无穷大。
  • NaN:一些需要数字作为参数的函数,当传入的实参无法转换为数字时,往往会返回这个值;关于NaN,最重要的就是要记住NaN!=NaN,因此判断一个变量是否为NaN,一定要使用isNaN(var)函数。
  • 将字符串转换为数字:sVar.parseInt() 是最常用的函数,也最容易出错,为了保险起见,最好每次调用的时候,都加上“进制”的参数,比如:a.parseInt(10),就制定了按十进制转换字 符串a;Number(sVar)也是一种转换方式,不同的是,它要求整个字符串都得是有效数字,因此Number("4.5.5")将返回NaN;

分享到:
评论

相关推荐

    instanceof 判断引用类型,typeof判断基本类型。

    在JavaScript编程语言中,`instanceof` 和 `typeof` 是两个非常重要的操作符,用于判断变量的类型。它们各自有着不同的用途和用法,对于理解和调试代码至关重要。 首先,我们来详细了解一下`instanceof`操作符。`...

    关于js typeof 与 instanceof 判断数据类型区别及开发使用.docx

    在JavaScript开发中,判断变量的数据类型是至关重要的,因为这门语言具有动态类型特性。`typeof`和`instanceof`是两种常见的用于检测数据类型的工具,但它们有着不同的用法和限制。下面我们将深入探讨这两个操作符的...

    JS中typeof与instanceof的区别

    在 JavaScript 中,typeof 和 instanceof 是两个常用的运算符,用来判断一个变量是否为空,或者是什么类型的。但是,这两个运算符之间还是有区别的。 typeof 运算符是一个一元运算符,放在一个运算数之前,运算数...

    JavaScript的instanceof有bug?

    此外,`instanceof`对自定义类型和内置类型(如`Array`、`Function`等)的判断也可能出现偏差。例如,如果你通过原型赋值的方式创建了一个类,即使这个类的行为与`Array`相同,`instanceof`也可能会返回`false`,...

    javascript instanceof 与typeof使用说明

    typeof用以获取一个变量的类型,typeof一般只能返回如下几个结果:number,boolean,string,function,object,undefined。我们可以使用typeof来获取一个变量是否存在,如 if(typeof a != “undefined”){},而不要去...

    前端面试题之baseJS-instanceof.zip

    "baseJS-instanceof.zip"这个压缩包文件显然聚焦于JavaScript的基础知识,特别是`instanceof`操作符的使用。在这里,我们将深入探讨`instanceof`在JavaScript中的工作原理、相关知识点以及在实际编程中的应用。 `...

    typeof、instanceof、constructor 的联系、区别、应用场景(js 类型判断)

    联系 这三者都可以用来判断一个对象的类型 let now = new Date() ...instanceof 用来判断左边的值是否属于右边的类型,返回布尔值 true 或 false(严谨地说是:“左值是否为右值的实例”) construct

    instanceof 和 prototype 关系

    在JavaScript中,`instanceof`和`prototype`是两个非常重要的概念,它们涉及到对象的类型检测和继承机制。本文将深入探讨这两个关键字的关系及其在实际编程中的应用。 首先,我们来理解`instanceof`操作符。`...

    JS 使用 typeof 获取数据类型

    这篇博客“JS 使用 typeof 获取数据类型”深入探讨了如何利用`typeof`来识别和处理不同类型的JavaScript数据。 首先,`typeof`返回的是一个字符串,这个字符串描述了变量的类型。它适用于原始数据类型(如`...

    js 数据类型转换总结笔记

    在JavaScript中,数据类型转换是编程过程中不可或缺...在阅读代码或调试问题时,对这些知识的掌握尤为重要,尤其在处理复杂的数据交互或类型判断时。了解和熟练运用这些转换规则,能让你在JavaScript的世界里游刃有余。

    JavaScript中判断对象类型的几种方法总结

    我们知道,JavaScript中检测对象类型的运算符有:typeof、instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一个说明运算数类型的字符串。如:”number”,”string”,”...

    JavaScript instanceof 的使用方法示例介绍

    `instanceof` 是 JavaScript 中的一个操作符,用于判断一个对象是否是某个构造函数的实例,或者是否属于特定的原型链。这个操作符在处理复杂的对象类型和继承关系时特别有用,因为 `typeof` 运算符在面对对象时只能...

    判断数据类型的方法.html

    JS中判断数据类型的4种方法及其实例:typeof、instanceof、constructor、Object.prototype.toString.call();还有判断数据类型的函数

    js代码-instanceof的实现

    总结来说,`instanceof`是JavaScript中用于判断对象类型的重要工具,它基于原型链进行操作。通过理解`instanceof`的工作原理,我们可以自定义类似的功能,这对于深入理解JavaScript的原型和继承机制非常有帮助。

    JS中typeof与instanceof之间的区别总结.docx

    在JavaScript中,`typeof`和`instanceof`是两种常用的类型检查操作符,它们各自有着不同的用法和特点。理解这两者之间的差异对于编写健壮的JavaScript代码至关重要。 `typeof`操作符主要用于检测变量的数据类型。它...

    JavaScript类型检测之typeof 和 instanceof 的缺陷与优化

    在javascript中,typeof 和 instanceof 是用来判断数据类型比较通用的两个方法,这篇文章的目的是通过对这两个方法介绍来分析其存在的不足并提出优化方案。 typeof ——————————————————————...

    javascript判断一个变量是数组还是对象

    javascript中如何准确判断一个变量是什么,面试中这是考一个人基本功扎不扎实必定会问的一个问题。如果你还不是很清楚,相信这篇文章会对你有所帮助。 一,判断方法 1.typeof 我们能够使用typeof判断变量的身份,...

    实例讲解JavaScript中instanceof运算符的用法

    JavaScript中的instanceof运算符可以用来判断对象类型,而更重要的是instanceof能够判断对象的继承关系,这里我们就来以实例讲解JavaScript中instanceof运算符的用法

    深入剖析JavaScript instanceof 运算符

    在 JavaScript 中,判断一个变量的类型尝尝会用 typeof 运算符,在使用 typeof 运算符时采用引用类型存储值会出现一个问题,无论引用的是什么类型的对象,它都返回 “object”。ECMAScript 引入了另一个 Java 运算符...

    js代码-js数据类型判断(typeof、instanceof)

    在JavaScript编程语言中,了解如何正确地判断变量的数据类型至关重要,因为这直接影响到代码的运行逻辑和错误处理。本文将深入探讨两种常见的数据类型检查方法:`typeof`和`instanceof`。 `typeof`操作符是...

Global site tag (gtag.js) - Google Analytics