JS 中的作用域与变量提升

server/2024/12/27 12:33:01/

JS中有两种作用域 一个是全局作用域 一种是函数作用域

全局作用域声明的属性 哪里的可以访问

javascript">console.log(a) //undefind
var a = 0
vat b = 1
console.log(a) // 0

函数作用域中声明的属性只能在函数中访问(如果在外部访问就会爆错)

javascript">console.log(a) // Uncaught ReferenceError: a is not defined
function fun() {console.log(a) // undefindvar a = 0;console.log(a) // 0
}

 关于JS中的变量提升

 变量提升的概念值的是将变量的声明和方法的定义放到最上面,例如:

javascript">console.log(a, fun1, fun2) // undefind, function, undefindconst a = 0;function fun1() {console.log('fun1')
}var fun2 = function() {console.log('fun2')
}

上面的代码中,在代码中 a 定义之前就能够访问到 a ,但是输出的是undefind, 这是因为它只会将变量的定义进行提升,而赋值不会;fun1 是一个方法,会直接提升到最上面,所以能在最最上面输出,而fun2是一个变量,它和a一样只会将定义提升;

特殊的let 和 const

虽然这两个也存在变量提升,但是提升之后并不能直接访问 ,会存在暂时性死区

javascript">console.log(a) //  ReferenceError: Cannot access 'a' before initialization
let a = 1;
const b = 2;

 


http://www.ppmy.cn/server/153622.html

相关文章

2. FPGA基础了解--全局网络

前言 引入扇出的概念介绍FPGA中的全局网络为后续时序优化埋下伏笔 扇出 在FPGA设计中扇出是一个重要的概念,所谓的扇出就是一个控制信号所能控制的数据信号的总个数,比如ctrl信号的扇出就是16 reg ctrl 0; reg [15:0] out 0; always (posedge c…

低压降稳压器(LDO)典型特性压降

本文章是笔者整理的备忘笔记。希望在帮助自己温习避免遗忘的同时,也能帮助其他需要参考的朋友。如有谬误,欢迎大家进行指正。 一、什么是压降 压降电压 VDO 是指为实现正常稳压,输入电压 VIN 必须高出所需输出电压 VOUT(nom) 的最小压差。请…

THREE.js 入门(六) 纹理、uv坐标

一、uv坐标 相当于x、y轴&#xff0c;通过自定义uv坐标可以截取所需的纹理范围 <template><div id"container"></div> </template><script setup> import * as THREE from "three"; import { onMounted } from "vue&…

Coroutine 基础二 —— 结构化并发(一)

1、“一个协程”到底指什么 为了讲结构化并发&#xff0c;需要先讲父子协程&#xff1b;讲父子协程&#xff0c;就需要先讲什么是“一个协程”。 课程用线程作为对比来引入协程概念。使用线程时&#xff0c;通常会认为 Thread 对象就是线程&#xff0c;除了 Thread 这个单词本…

单片机长耗时前后台任务优化

代码&#xff1a; void Task_10ms(void) {... }//改 void Task_2ms(void) {static uint8_t s_state 0switch(s_state){case 0:....s_state 1;break;case 1:....s_state 2;break;case 3:....s_state 1;break;default: //此段可以去除s_state 0;break; } } 参考链接 MCU长…

从论文到实践:Stable Diffusion模型一键生成高质量AI绘画

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;编程探索专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年12月24日10点02分 神秘男子影, 秘而不宣藏。 泣意深不见, 男子自持重, 子夜独自沉。 论文源地址有视频&#xff1a; 链接h…

linux下搭建lamp环境(dvwa)

lamp简介 LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写&#xff1a; Linux&#xff0c;操作系统 Apache&#xff0c;网页服务器 MariaDB或MySQL&#xff0c;数据库管理系统或数据库服务器 PHP、Perl或Python&#xff0c;脚本语言 # ubuntu安装…

高速图像处理卡设计原理图:基于3U VPX XCZU15EG+TMS320C6678的信号处理板

基于3U VPX XCZU15EGTMS320C6678的信号处理板 一、板卡概述 本板卡系我司自主研发的基于3U VPX风冷、导冷架构的信号处理板&#xff0c;适用于高速图像处理等。芯片采用工业级设计。 板卡采用标准3U VPX架构&#xff0c;板上集成一片Xilinx公司ZynqUltraScale系列F…