• js 基础复习 之 js 类型判断


    ECMAScirpt 变量有两种不同的数据类型:基本类型,引用类型。

    1.基本类型

    基本的数据类型有:`undefined,boolean,number,string,null.基本类型的访问是按值访问的,就是说你可以操作保存在变量中的实际的值。
    基本类型有以下几个特点:

    1.基本类型的值是不可变得:

        1.任何方法都无法改变一个基本类型的值.

    var name = 'hello';
    name.toUpperCase(); // 输出 'HELLO'
    console.log(name); // 输出  'hello'

      2.我们不能给基本类型添加属性和方法,再次说明基本类型时不可变得.

    var person = 'hello';
    person.age = 18;
    
    console.log(person.age); // undefined

    2.基本类型的比较是值的比较:

    var a = 1;
    var b = true;
    console.log(a == b);//true

    3.基本类型的变量是存放在栈区的(栈区指内存里的栈内存)

    2.引用类型

    javascript中除了上面的基本类型(number,string,boolean,null,undefined)之外就是引用类型了

    1.引用类型的值是可变的

    var person = {};//创建个控对象 --引用类型
    person.name = 'hello';
    person.age = 22;
    person.sayName = function(){console.log(person.name);} 
    person.sayName();// 'hell0'
    
    delete person.name; //删除person对象的name属性
    person.sayName(); // undefined

    2.引用类型的值是同时保存在栈内存和堆内存中的对象

    var person1 = {name:'123'};
    var person2 = {name:'456'};
    var person3 = {name:'789'};

    3.引用类型的比较是引用的比较

    var person1 = '{}';
    var person2 = '{}';
    console.log(person1 == person2); // true

    基本类型的比较的时候提到了当两个比较值的类型相同的时候,相当于是用 === ,所以输出是true了。

    var person1 = {};
    var person2 = {};
    console.log(person1 == person2); // false

    引用类型时按引用访问的,换句话说就是比较两个对象的堆内存中的地址是否相同,那很明显,person1和person2在堆内存中地址是不同的:

  • 相关阅读:
    SpringBoot+Vue实现指定账号审批单据时前端进行语音播报
    Jquery中使用JsonP加载本地json文件解决跨域问题
    Android中WebView加载sdcard中的html显示
    Android中WebView加载sdcard中的html时提示:ERR_FILE_NOT_FOUND和ERR_ACCESS_DENIED
    【20220302】育己人
    保序回归问题学习笔记
    可持久化数据结构学习笔记
    WC2022 打不过去年记
    Solution Set 「LOCAL」冲刺省选 Round XI
    Solution Set 「LOCAL」冲刺省选 Round XII
  • 原文地址:https://www.cnblogs.com/hzhj/p/6486603.html
Copyright © 2020-2023  润新知