zoukankan      html  css  js  c++  java
  • 【面筋烧烤手册】JavaScript数据专题

    JavaScript数据专题

    1、原始数据类型 和 引用数据类型

    原始数据类型 存在栈中 空间小 大小固定 频繁更换

    • Undefined
    • Null
    • String
    • Boolean
    • Number
    • Symbol
    • BigInt

    引用数据类型 存在栈和堆中 栈保存引用堆的指针
    Object(Function Array Date)

    2、数据类型判断

    • typeof()只用于判断原始数据类型 引用数据类型全是Object
    • a instanceof b 通过判断是否是b数据类型的实例 不能判断 数字、字符串、布尔 因为他们不是某一数据类型的实例
    • a.constructor === b 判断实例的构造函数
    • Object.prototype.toString.call(a)
    • 最强的数据类型判断
    //万能的类型检测方法
    const checkType = (arr) => {
    	return Object.prototype.toString.call(arr).slice(8, -1);
    }
    
    • 如果要判断是不是数组
      考虑兼容性,因为isArray是es6的
    if(!Array.isArray){ 
    	Array.isArray = function(arg){ 
    		return Object.prototype.toString.call(arg)==='[object Array]' 
    	} 
    }
    

    3、null与undefined的区别是什么?(空值和未声明)

    null表示为空,代表此处不应该有值的存在,⼀个对象可以是null,代表是个空对象,⽽null本身也是对象。
    undefined表示『不存在』,JavaScript是⼀⻔动态类型语⾔,成员除了表示存在的空值外,还有可能根本就不存在(因 为存不存在只在运⾏期才知道),这就是undefined的意义所在。

    4、隐式类型转换

    在这里插入图片描述

    1. 字符串连接符与算术运算符
      num+Number(xxx)
      在这里插入图片描述
    2. 关系运算符:会把其他数据类型转换成number之后再比较关系
      在这里插入图片描述
    3. 复杂数据类型在隐式转换时会先转成String,然后再转成Number运算
      在这里插入图片描述
    4. 逻辑非隐式转换与关系运算符隐式转换搞混淆
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
  • 相关阅读:
    9月9
    JavaScript语法(三)
    JavaScript语法(二)
    实现AJAX的基本步骤 。。转
    Ajax 完整教程。。转载
    Struts2中的Action类(解耦方式,耦合方式)
    web应用中使用JavaMail发送邮件 。。转载
    Struts2下的<result>中的type整理
    Struts2整理+课堂代码+注意事项
    一对多,多对一,注意事项总结
  • 原文地址:https://www.cnblogs.com/SiriusZHT/p/14365038.html
Copyright © 2011-2022 走看看