• javascript——数据类型


    在内存中,分为栈、堆、代码段、静态区,为了快速处理复杂的代码,在不同的区间储存不同的数据类型。

    数据类型分为初始类型与引用类型

    初始类型在栈中存储,变量赋值传值不传址,引用类型在堆中存储值,栈中只存储地址,变量赋值传址不传值。对于传址和传值举个例子:

    1.初始类型赋值传递:

    var num=200;
    var gert=num;
    num=300;
    console.log(gert)  //200
    //只传值,num值的变化对gert没影响

      2.引用类型赋值传递:

      

    var aa=[1,2];
    var bb=aa;
    aa.push(3);
    console.log(bb);//[1,2,3]
    //传址不传值,aa的变化对bb有影响

      再来说初始数据类型,分为number、string、boolean、undefined、null

        1.number:主要包括整数、小数(浮点)、负数、进制(二进制、八进制、十六进制),以0x开头的为十六进制,0开头的为8进制,进制转化采用加权方式

    console.log(Number.MAX_VALUE) //js可解析的最大值
    console.log(Number.MIN_VALUE)//js可解析的接近0的最小正值

        2.string:一般引号引起的都是字符串,   转义字符 换行  回车  f分页  制表符(Tab)

          注意:“ ”与‘’ 可以嵌套但不能交叉

        3.Boolean:true false (任何数据类型都可被判断为 true false )

        4.undefined:默认为undefined的情况

          a)一个变量只声明不赋值:var a;console.log(a)  //undefined

          b)函数中传参,如果形式参数没有被传值,默认为undefined

            

    function aa(a,b){
        console.log(a);
        console.log(b);
    }
    aa("我是第一个参数")
    
    //“我是第一个参数”   undefined

          c)数组中某个下标的位置没有被传值,默认为undefined   

    var arry=[1,2,,4]
    console.log(arry[2])
    //undefined

          d)对象中没有某个属性,默认为undefined

    function person(){
         this.name="zhangsan";
    }
    var obj=new person();
    console.log(obj.name);
    console.log(obj.say);
    //zhangsan   undefined

          e)函数中没有定义返回值,默认为undefined

    function person(){
            var aa="返回值";
            return aa;
    }
    person();
    console.log(person())   //返回值
    
    function person(){
           var aa="返回值";
           return;
    }
        person();
        console.log(person()) //undefined

        5.null

        占位符,是个空对象,可直接清空对象,是对象原型链的终点

       (undefined与null的区别:在垃圾回收机制中,null直接清空对象,undefined是js中的内部回收机制进行清除;null是个空对象,类型是Object,undefined是预定义的全局变量)

      引用数据类型主要包括函数、数组、对象(数组对象、字符串对象、自定义对象。。。)

  • 相关阅读:
    Linux文本检索命令grep笔记
    Linux文本检索命令grep笔记
    Linux文件查询笔记
    Linux文件查询笔记
    Linux文件默认权限和umask笔记
    Linux文件默认权限和umask笔记
    Linux关于文件的权限笔记
    Linux关于文件的权限笔记
    Linux文件操作实用笔记
    6.创建自定义菜单
  • 原文地址:https://www.cnblogs.com/wykbk/p/6756413.html
Copyright © 2020-2023  润新知