随笔 - 24  文章 - 0  评论 - 0  阅读 - 8478

cont

一、基础

const 声明一个只读的常量,一旦声明,常量的值就不会改变

const PI = 3.1415;
PI // 3.1415
PI = 3;
// TypeError: Assignment to constant variable.

const一旦声明变量,就必须立即初始化

const的作用域与let命令相同:只在声明所在的块级作用域内有效

const也不会变量提升,存在暂时性死区,只能在声明位置后使用。不可重复声明

 

  上面代码中,常量foo指向一个冻结的对象,所以添加新属性不起作用,严格模式时还会报错。

  除了将对象本身冻结,对象的属性也应该冻结。下面是一个将对象彻底冻结的函数。

var constantize = (obj) => {
  Object.freeze(obj);
  Object.keys(obj).forEach( (key, i) => {
    if ( typeof obj[key] === 'object' ) {
      constantize( obj[key] );
    }
  });
};

另:

    Object.keys 返回一个所有元素为字符串的数组,其元素来自于从给定的object上面可直接枚举的属性。这些属性的顺序与手动遍历该对象属性时的一致。

                                             

 

 

二、ES6声明变量的六种方法

var  function let const import class

 

posted on   zhanlanzzz  阅读(921)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示