let const命令

let命令

let实际上为 JavaScript 新增了块级作用域。
var声明全局作用域,let声明局部作用域

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width initial-scale=1.0">
    <meta http-equiv="x-ua-compatible" content="ie=edge">

    <title>Title</title>

</head>
<body>

</body>
<script>

    let a = 10;
    var b = 18;
    {let c = 28}
    let d = 38;

    console.log(d); // 38
    console.log(c); // 报错。 c is not defined

    console.log(window.a); // undefined
    console.log(window.b); //18

</script>
</html>

const

const实际上保证的,并不是变量的值不得改动,而是变量指向的那个内存地址所保存的数据不得改动。对于简单类型的数据(数值、字符串、布尔值),值就保存在变量指向的那个内存地址,因此等同于常量。但对于复合类型的数据(主要是对象和数组),变量指向的内存地址,保存的只是一个指向实际数据的指针,const只能保证这个指针是固定的(即总是指向另一个固定的地址),至于它指向的数据结构是不是可变的,就完全不能控制了

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width initial-scale=1.0">
    <meta http-equiv="x-ua-compatible" content="ie=edge">

    <title>Title</title>

</head>
<body>

</body>
<script>
    const a = 10;
    // let a = 35; //报错
    const list = [];
    list.push('hello'); //成功
    // list = ['大吉大利'] // 报错

    const dict = {};
    dict.prop = 125;
    console.log(dict); // {prop: 125}
</script>
</html>
posted @   Jason_lincoln  阅读(145)  评论(0编辑  收藏  举报
编辑推荐:
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
阅读排行:
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· Browser-use 详细介绍&使用文档
· 软件产品开发中常见的10个问题及处理方法
点击右上角即可分享
微信分享提示