【前端学习】—let const var之间的区别(十三)

【前端学习】---let const var之间的区别(十三)

一、let const var之间的区别

二、代码演示

bash 复制代码
   <script>
        // 1、const let不存在变量提升 var 存在变量提升

        //var
console.log(`fullName`,fullName);//fullName undefined
//var fullName='cai';
/*
var 声明变量的方式会存在变量提升,var在声明变量之前,首先会将var fullName提升到代码块的最前面

*/



//let
console.log(`fullName`,fullName);//Uncaught ReferenceError: Cannot access 'fullName' before initialization

let fullName='cai';

//const
//console.log(`fullName`,fullName);
//const fullName='cai'//let const.html:13 Uncaught ReferenceError: Cannot access 'fullName' before initialization

    </script>
bash 复制代码
var fullName='cai';
function f(){
    console.log(`fullName`,fullName)//undefined
    if(false){
       var fullName='kiki'
    }
}

f();
bash 复制代码
let fullName='cai';
function f(){
    console.log(`fullName`,fullName)//cai  全局作用域
    if(false){
        //块级作用域 只在当前范围内生效
       let fullName='kiki'
    }
}

f();
bash 复制代码
// 暂时性死区 声明变量之前不能提前给变量赋值

var fullName='cai'
if(true){
  fullName='test'
  let fullName;//声明变量之前不能提前给变量赋值
}
bash 复制代码
//不能重复声明
function f(){
    let a='10';
    let a='20';
}
bash 复制代码
var fullName='cai'
console.log(`window`,window.fullName);//cai
//let 和const声明的变量不会挂载在window对象下面

const fullName1='cai'
console.log(`window`,window.fullName1);// undefined
bash 复制代码
//const声明的基本类型变量的值不能被改变,引用类型可以
const familyName='cai';
//familyName='cai1'
console.log(familyName)//Uncaught TypeError: Assignment to constant variable.


const fruit=['apple'];
fruit[0]='orange';
console.log(fruit);//['orange']
    
相关推荐
陈_杨几秒前
前端成功转鸿蒙开发者真实案例,教大家如何开发鸿蒙APP--ArkTS 卡片开发完全指南
前端·harmonyos
victory04311 分钟前
大模型学习阶段总结和下一阶段展望
深度学习·学习·大模型
程序猿零零漆5 分钟前
Spring之旅 - 记录学习 Spring 框架的过程和经验(十三)SpringMVC快速入门、请求处理
java·学习·spring
小杨同学497 分钟前
C 语言实战:枚举类型实现数字转星期(输入 1~7 对应星期几)
前端·后端
陈_杨8 分钟前
前端成功转鸿蒙开发者真实案例,教大家如何开发鸿蒙APP--ArkTS 卡片刷新机制
前端·harmonyos
曾浩轩14 分钟前
跟着江协科技学STM32之4-5OLED模块教程OLED显示原理
科技·stm32·单片机·嵌入式硬件·学习
go_caipu15 分钟前
Vben Admin管理系统集成qiankun微服务(二)
前端·javascript
幻云201019 分钟前
Next.js指南:从入门到精通
开发语言·javascript·人工智能·python·架构
唐叔在学习19 分钟前
insertAdjacentHTML踩坑实录:AI没搞定的问题,我给搞定啦
前端·javascript·html
超绝大帅哥19 分钟前
Promise为什么比回调函数更好
前端