• 关于 JavaScript 数据类型判断


          在 JavaScript 中,有 undefined、null、number、string、boolean 五种基本数据类型,另外,有一种复杂数据类型 object ,类似于 C# 中值类型、引用类型。

         在 JavaScript 中,判断一个变量的数据类型(仅限于基本类型),可以通过 typeof 操作符来进行 , 返回一个字符串。

         

    typeof(undefined)        // “undefined”
    typeof(null)              // "object"
    typeof(3)                 // "number"
    typeof("abc")             //  “string”
    typeof([])                  // "object"
    typeof(function test() {})   // "function"

           在 JS 中,函数也是一种对象,  JavaScript 中有 String、Object、Boolean、Number、Date、Error 等内置函数对象。

         

     创建对象的可通过  new 构造函数名()实现。
    
     var array=new Array() ;  // 语法糖 []
    
     var obj=new Object();   // 语法糖 {}

          

         而在 JavaScript 中判断引用类型 可采用 instanceof 进行判断   ( obj  instanceof  constructor  )  obj :需判断对象  constructor:函数名   返回值为 boolean     用于判断某个构造函数的prototype属性是否存在另外一个要检测对象的原型链上

        

        console.log([] instanceof Array) // true 
    
        console.log(Object instanceof Function) // true
    
        console.log(Object instanceof Object)     // true 
    

      

       JavaScript 中原型:在 JS 中通过原型来实现继承,在 JS  中没有类的概念。 

    在 JS 中每个 JS 对象都有一个默认 _proto_ 隐式属性(在 ECMASCRIPT 5 ,可通过 Object.getPrototypeof(obj) 方法获取对象原型 )
    
    而该隐式原型等于创建该对象构造函数的 prototype 属性 ,每当对身自身查找方法属性时,如果在本身查找不到时,就会沿着该原型进行查找,
    
    如果在该原型中查找不到,继续沿着该原型的原型往上进行查找 ...... 即形成原型链, 最后查找到 Object.prototype 为止,
    
    Object.prototype._proto_ 值为 null。
    
    obj._proto_===Object.getPrototypeof(obj)===constructor.prototype
    
     其中 obj 为对象  constructor 为创建 obj 的构造函数
    

      

        var obj={Name:"王尼玛",Age:20,Gender:true};
    
        console.log(obj.Name) ; //    JS 属性方法查找规律,首先去自身查找 Name 属性 ,如果找到就不在往上查找。
    
        console.log(obj.toString()); //  obj 本身是没有这个方法的,那么肯定就是继承而来的
    
    
  • 相关阅读:
    java笔试之数字颠倒
    java笔试之取近似值
    java笔试之求int型正整数在内存中存储时1的个数
    js日期格式化Date
    【算法导论C++代码】归并排序
    Unity3D 错误nativeVideoFrameCallback的解决方法
    Unity3D脚本(MonoBehaviour)生命周期分析
    Unity3D 移动MM failed to find resource file{mmiap.xml}解
    Unity3D C#打开外部应用程序,并检测应用程序是否关闭退出
    Unity3d脚本执行顺序详解
  • 原文地址:https://www.cnblogs.com/Lumia1020/p/4843662.html
Copyright © 2020-2023  润新知