最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • JavaScript知识点回顾(十二)——变量、作用域与内存(一)

    正文概述 掘金(白祁ovo)   2021-08-12   484

    这是我参与8月更文挑战的第十二天,活动详情查看:8月更文挑战

    原始值与引用值

    ECMAScript变量可以包含两张不同类型的数据:原始值和引用值。原始值就是最简单的数据,引用值则是由多个值构成的对象。Undefined、Null、Boolean、Number、String和Symbol就是六种原始值类型。保存原始值的变量是按值访问的,保存引用值的变量是按引用访问的。

    动态属性

    对于引用值,可以随时添加、修改和删除其属性和方法。

        let juejin = new Object();
        juejin.year = 2021;
        console.log(juejin.year);  //2021;
    

    原始值则不能有属性,只有引用值能动态添加后面可以使用的属性。

    复制值

    在通过变量把一个原始值赋值给到另一个变量是,原始值会被复制到新变量的位置。

        let year1 = 2021;
        let year2 = year1;
    

    这里的year1和year2虽然值都是2021,但是是两个完全独立的变量。

    而在把引用值从一个变量赋给另一个变量时,存储在变量中的值也会被复制到新变量的位置。区别在于,这里复制的值实际上是一个指针,这个指针指向存储在堆内存中的对象。也就是说,原始值复制时传的是值,引用值复制时传的是址。

        let juejin = new Object();
        let obj = juejin;
        juejin.year = 2021;
        console.log(obj.year);    //2021
    

    传递参数

    ECMAScript中所以函数的参数都是按值传递的,在传递参数时,值会被复制到一个局部变量(即一个命名参数,或者说是arguments对象中的一个坑位),在按引用传递参数时,值在内存中的位置会被保存到一个局部变量。即使对象时按值传进函数的,obj也会通过引用访问对象。当obj在函数内部被重写时,它变成一个指向本地对象的指针,而这个本地对象在函数执行结束时会被销毁。

    确定类型

    采用typeof操作符用于判断一个变量是否为原始值。可以判断字符串、数值、布尔值或布尔值或 undefined。

    如果值为 null 则返回 object

    如果需要进一步判断是什么类型的对象,可以采用instanceof

    如果用 instanceof 检测原始值,则返回 false


    起源地下载网 » JavaScript知识点回顾(十二)——变量、作用域与内存(一)

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元