精华内容
下载资源
问答
  • js判断引用数据类型
    2022-06-13 13:24:11

    一、数据类型

    基本数据类型:String、Number、Boolean、undefined、null、Symbol(ES6)

    引用数据类型:Object、Array、Function、Date

    基本数据类型存储在栈中,栈用于存储基本数据类型和执行代码

    引用数据类型存储在堆中

    速度
    空间小,稳定大,动态、无限
    存储顺序

    无 按引用直接获取

    二、undefined与null

    undefined是一个变量最原始的状态值,非人为操作

    null是人为地置空

    undefined == null

    判断是否为null:if(i === null)

    三、typeof

    typeof是一个运算符

            console.log(typeof undefined); //undefined
            console.log(typeof null);           //object
            console.log(typeof {a:"sd"});    //object
            console.log(typeof 123);         //number
            console.log(typeof "123");      //string
            console.log(typeof true);        //boolean
            console.log(typeof [1,2,3]);    //object
            function fn(){}
            console.log(typeof fn);          //function

    四、其他数据类型转换为Boolean值

    truefalse
    undefined--undefined
    null--null
    Number其它+0、-0、NaN
    Stringlength>0length=0
    Object所有--

    四、其它数据类型转换为Number

    (1)使用Number函数

    字符串:含有非数字为NaN,纯数字返回数字,"" 与 " "为0

    布尔值:true 1,false 0

    数组:[]为0,其余NaN

    对象:NaN

    null:0

    undefined:NaN

    判断变量a是否是NaN,isNaN(a);

            console.log(Number("123"));                //123
            console.log(Number(""));                      //0
            console.log(Number(" "));                     //0
            console.log(Number("a123"));            //NaN
            console.log(Number("123a123"));    //NaN
            console.log(Number(true));        //1
            console.log(Number(false));        //0
            console.log(Number({a:"1"}));    //NaN
            console.log(Number({a:true}));    //NaN
            console.log(Number({a:false}));    //NaN
            console.log(Number([1,2,3]));    //NaN
            console.log(Number([]));        //0
            function fn(){};                //
            console.log(Number(fn));        //NaN
            console.log(Number(null));        //0
            console.log(Number(undefined));    //NaN

    (2)字符串转Number,parseInt与parseFloat

    非数字后面的会被舍弃

    第一个字符是非数字为NaN

    五、其它数据类型转换为String类型

    调用内置函数的toString方法

    更多相关内容
  • 1. 常见的基本/引用数据类型 基本数据类型: Number、String 、Boolean、Null和undefined。基本数据类型是按值访问的,可以直接操作保存在变量中的实际值。 引用数据类型: Object基本上除了基本数据类型都是引用...

    1. 常见的基本/引用数据类型

    基本数据类型: NumberStringBooleanNullundefined。基本数据类型是按值访问的,可以直接操作保存在变量中的实际值。
    引用数据类型: Object基本上除了基本数据类型都是引用数据类型,如ArrayFunctionDateRegExpError和自定义封装等Object类型(根类)。

    2. 数据类型的判断

    typeof, instanceof, constructor, Object.prototype.toString.call()

    1. typeof: 基本类型大部分都能被准确检测并返回正确的字符串(除了 Null 类型,其返回 object 字符串),而引用类型大部分都不能够被准确检测(除了 Function 类型能够准确返回 function 字符串外,其它的都返回了 object 字符串)。
    2. instanceof: instanceof 运算符用来测试一个对象在其原型链中是否存在一个构造函数的 prototype 属性。即判断对象是否是某一数据类型(如Array)的实例。只有引用数据类型(Array,Function,Object)被精准判断,其他(数值Number,布尔值Boolean,字符串String)等基本数据类型不能被instanceof精准判断

    2.1 typeof

    	console.log(typeof 7); // number
        console.log(typeof '7'); // string
        console.log(typeof false); // boolean
        console.log(typeof [false]); // object
        console.log(typeof function () {}); // function
        console.log(typeof {}); // object
        console.log(typeof undefined); // undefined
        console.log(typeof null); // object
    

    2.2 instanceof

    	console.log(7 instanceof Number); // false
        console.log('7' instanceof String); // false
        console.log(false instanceof Boolean); // false
        console.log([] instanceof Array); //true
        console.log(function () {} instanceof Function); // true
        console.log({} instanceof Object); // true
        // undefined is not a constructor
        // null is not a constructor
    

    2.3 constructor

     	console.log((7).constructor === Number); // 全为true
        console.log(('7').constructor === String); //
        console.log(false.constructor === Boolean); //
        console.log((function () {}).constructor === Function); //
        console.log(({}).constructor === Object); //
        console.log(([]).constructor === Array); //
    
        function Test() {}
        Test.prototype = new Array();
        let f = new Test();
        console.log(f.constructor === Function) // false
        console.log(f.constructor === Test)  // false
        console.log(f.constructor === Array)  // true
    

    2.4 Object.prototype.toString.call()

    	let too = Object.prototype.toString;
        console.log(too.call(7)); // [object Number]
        console.log(too.call('7')); // [object String]
        console.log(too.call(false)); // [object Boolean]
        console.log(too.call([])); // [object Array]
        console.log(too.call({})); // [object Object]
        console.log(too.call(function () {})); // [object Function]
        console.log(too.call(undefined)); // [object Undefined]
        console.log(too.call(null)); // [object Null]
    
    展开全文
  • typeof是个操作符,可以判断基本数据类型(返回的结果只能是number,string,boolean,null,symbol,function,object) 返回值分以下几种 对于基本类型。除了null值返回object以外,其他均返回正确的结果 对于引用...
  • js 判断数据类型 引用类型

    千次阅读 2018-12-06 09:48:11
    * js 判断数据类型 * 基础类型 typeof string number boolean undefined null * * 引用类型 基础类型都可以使用 vue中使用这种方法判断数据类型 * 使用: Object.prototype.toString.call(要判断的数据) * * ...
    /**
     * js 判断数据类型
     * 基础类型 typeof string number boolean undefined null
     *
     * 引用类型 基础类型都可以使用 vue中使用这种方法判断数据类型
     * 使用: Object.prototype.toString.call(要判断的数据)
     *
     * 判断数组还可以
     * arr instanceof Array
     *
     */
    
     console.log(Object.prototype.toString.call(1)); // [object Number]
     console.log(Object.prototype.toString.call('abc')); // [object String]
     console.log(Object.prototype.toString.call(false)); // [object Boolean]
     console.log(Object.prototype.toString.call(undefined)); // [object Undefined]
     console.log(Object.prototype.toString.call(null)); // [object Null]
     console.log(Object.prototype.toString.call([12,32,43,21,32,12])); // [object Array]
     console.log(Object.prototype.toString.call({x:1,y:3})); // [object Object]
     console.log(Object.prototype.toString.call(new Date())); // [object Date]
     console.log(Object.prototype.toString.call(/abc/)); // [object RegExp]
    
    
    展开全文
  • 1、分类 基本 (值)类型 String;任意字符串 Number:任意的数 boolean:true/false undefind:unfefined null:null 对象(引用)类型 Object:任意对象 ...typeof:返回数据类型是字符串 可以判断undefined 数...

    1、分类
    基本 (值)类型
    String : 任意字符串
    Number:任意的数
    boolean:true/false
    undefind : unfefined
    null:null
    对象(引用)类型
    Object:任意对象
    Function:一种特别的对象(可以执行)
    Array:一种特别的对象(数值下标,内部数据是有序的)

    2、判断
    typeof:返回数据类型是字符串
    可以判断undefined 数值 字符串 布尔值 function
    不能判断null 与 Object Object与Array

    var a
    console.log(a, typeof a, typeof a === 'undefined', a === undefined)
    a = 3
    console.log(typeof a === 'number')
    a = 'sfd'
    console.log(typeof a === 'string')
    a=true
    console.log(typeof a === 'boolean')
    	var b={
    	    b1:function (){
    	    console.log("")
    	    },
    	    b2: [1, 'abs', console.log]
    	}
    console.log(typeof b.b1 === 'function')
    

    以上代码运行结果为:
    undefined “undefined” true true
    true
    true
    true
    true

    var b={
        b1:function (){
        console.log("")
        },
        b2: [1, 'abs', console.log]
    }
    console.log(typeof b.b2)
    a = null
    console.log(typeof a)
    console.log(a === null)
    

    以上代码运行结果为:
    object
    object
    true

    instanceof:判断对象的具体类型

    var b1 = {
                b2: [1, 'abs', console.log],
            }
           console.log(b1 instanceof Object)
           console.log(b1.b2 instanceof Array)
    

    以上代码运行结果:
    true
    true

    展开全文
  • 在探索数据类型判断方法的时候我们需要知道JS中有哪些数据类型: 我们可以把JS数据类型分为两类: 1.基本数据类型:Undefined、Null、Boolean、Number、String、Symbol(es6中新增) 2.引用类型(复杂数据类型):...
  • js判断数据类型(全)

    千次阅读 2022-04-11 08:05:30
    js基本数据类型 基本数据类型: String、Number、Boolean、Undefined未定义、null空、symbol表示独一无二的值(es6引入的新的原始数据基本类型)。 Number:返回的特殊值NaN,表示不是数值,用于表示本来要返回的...
  • JS如何判断数据类型

    2021-08-12 20:35:59
    今天就来记录一下JS中的数据类型是怎么判断的,面试的时候经常被问到哦~ 一、JS数据类型有哪些? JS数据类型分为两种,基本类型和引用类型。(具体区别就是他们的存储方式不同,这个之后在分享吧)
  • 引用数据类型8. 类型转换8.1 转换为String方式一(强制类型转换)调用被转换数据的toString()方法方式二(强制类型转换)调用String()函数方式三(隐式的类型转换)为任意的数据类型 +””8.2 转换为Number方式一...
  • 一般用于判断基本数据类型,用于判断引用数据类型和null时会发生意外的错误 typeof 1 // number typeof '1' // string typeof true // boolean typeof Symbol('1') // symbol typeof undefined // undefined typeof...
  • js数据类型判断

    千次阅读 2022-01-20 18:36:15
    基本数据类型中:Number,String,Boolean,undefined 以及引用数据类型中Function ,可以使用typeof检测数据类型,分别返回对应的数据类型小写字符。 另:用typeof检测构造函数创建的Number,String,Boolean都返回ob
  • JS 判断数据类型的方法

    千次阅读 2022-01-30 16:00:08
    二、JS判断数据类型的方法 1、使用 typeof 2、使用 instanceof 3、使用Object.prototype.toString.call 4、使用constructor 一、JS 中的数据类型 ECMAScript中有5中简单数据类型(也称为基本数据类型):...
  • 数据类型
  • 一、常见的基本数据类型和引用数据类型 1、基本数据类型:Number、String、Boolean、Null、undefined。基本数据类型,名字和值都会储存在栈内存中。 2、引用数据类型:Object、Array、Function、Date、RegExp、Error...
  • JS判断一个数据的数据类型的两种方法,typeof和tostring,其中含有可以完美判断的方法的封装。
  • JavaScript 中常见的几种数据类型: 目录 JavaScript 中常见的几种数据类型: 一、分类 二、判断 1、typeof null既然属于基本数据类型,为什么用typeof返回的是object呢? js小数运算出现的问题(精度丢失) ...
  • // 可以判断基本类型数据(除了 null)和函数 var type = typeof 123; console.log(type); // number console.log(typeof 'abc'); // string console.log(typeof true); // boolean console.log(typeof ...
  • js中的对象是引用类型 使用 == /=== 已经无法判断两个对象的属性和值是否相等 函数封装 // 对比两个对象的值是否完全相等 返回值 true/false let isObjectValueEqual = (a, b)=>{ //取对象a和b的属性名 ...
  • js判断变量数据类型的几种常用方法

    千次阅读 2022-07-31 19:32:46
    使用Object.prototype.toString.call的方式来判断一个变量的类型非常准确,会返回一个[objectXXX]样式的字符串。NaN会被识别为number,尽管NaN是Not-A-Number的缩写...用来检测引用数据类型,值类型都会返回false。...
  • JS判断数据类型的方式比较 && Object.prototype.toString.call(obj) 检测数据类型详解
  • javascript数据类型分两种: 1.基本数据类型(值类型) 2.复杂数据类型引用类型) 3.值类型和引用类型的区别 4.检测数据类型的方法 一、基本数据类型(值类型) 1.字符串类型/String 【创建方法】 var str...
  • 说之前先来介绍一下基本数据类型和引用数据类型指的到底是哪些数据类型。 1、五种基本数据类型:Number、String、Boolean、Null、Undefined 2、引用数据类型:Object 实例区分: <script> //基本...
  • js判断数据类型的几种方法

    千次阅读 2022-04-23 10:14:28
    参考文章:JavaScript判断对象类型的几种方法总结 根据要判断的数据对象,来选用合适的方法 ...2、对于部分引用数据类型:object、function,也可以使用typeof let obj = {} console.log(typeof obj); // ob
  • js 判断数据类型的几种方法

    千次阅读 2022-04-08 16:44:42
    介绍使用 typeof、instanceof 和 constructor 等方法判断数据类型
  • js判断对象数据类型

    2018-03-16 17:11:05
    Js中有五种基本数据类型:string、number、boolean、null、undefined,一种引用类型object,那么如何判断这些数据类型呢— —1、最常见的是typeof返回类型有:string number boolean undefined function object...
  • JS判断数据类型的5种方法

    万次阅读 2021-09-27 22:22:29
    引用数据类型 (引用类型):object。包含 Function、Array、Date、RegExp、Error等都是属于 Object 类型 。 一、typeof 通常用来判断基本数据类型,它返回表示数据类型的字符串(返回结果只能包括number,boolean,...
  • 引用数据类型 object function array 内置对象 ES6 新增基本数据类型 Symbol:唯一标识(内置对象) BigInt:比Number数据类型支持的范围更大的整数值(内置对象) JS判断数据类型 typeof 基本数据类型除了null...
  • js基本数据类型和引用数据类型有什么区别? 1.基本数据类型和引用数据类型包括哪些? 基本数据类型: 在javascript中,有6种基本数据类型:string、number、boolean、null、undefined、symbol 注:symbol是es2016新增...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 107,936
精华内容 43,174
关键字:

js判断引用数据类型