城乡建设部网站 挂证,如何查看网站备案信息,拓者设计吧邀请码,北京专业的网站建设就像我们在学校学习语文、英文时候一样#xff0c;最开始学习的是语法#xff0c;要知道基础的结构。 图片中包含 变量、标识符、数据类型、运算符、字面量、表达式、控制语句等语法
变量
变量是使用给定的符号名在内存中申请存储地址#xff0c;并且可以容纳某个值。 语…就像我们在学校学习语文、英文时候一样最开始学习的是语法要知道基础的结构。 图片中包含 变量、标识符、数据类型、运算符、字面量、表达式、控制语句等语法
变量
变量是使用给定的符号名在内存中申请存储地址并且可以容纳某个值。 语法是 变量 变量名数据类型 变量值字面量
let h_w : string hello world存储位置 在定义中我们说变量是存储在内存中那么内存是什么呢 内存是计算机用来存储数据和指令的硬件设备。它提供了计算机用来执行程序和处理数据的空间。 在ts中我们更关心栈stack 和 堆Heap的作用 栈Stack 定义 栈是一种线性结构存储在内存中用于存放方法调用、局部变量、函数参数以及程序执行期间的临时数据。 特点 栈是一种后进先出LIFOLast In First Out的数据结构最后进入的数据被最先取出。 用途 主要用于跟踪程序的执行过程、方法的调用和返回以及保存临时数据。 管理方式 栈的管理由编译器自动处理它在程序运行时分配和释放内存因此存储在栈中的变量的生命周期与其作用域紧密相关。 存储内容 局部变量函数内部定义的变量、方法的参数、方法调用和返回信息。 分配方式 分配和释放内存速度较快但是栈的大小通常比较有限受限于系统设置。 堆Heap 定义 堆是一种动态分配的内存区域用于存储程序运行时需要动态分配的数据。 特点 堆是一种自由存储的内存区域由程序员手动管理内存的分配和释放。 用途 主要用于存储动态分配的数据比如对象、数组等。 管理方式 堆的管理由程序员手动操作需要手动分配和释放内存如果没有适当地释放堆中的内存可能会导致内存泄漏。 存储内容 动态分配的对象和数据比如由 new 关键字创建的对象。 分配方式 分配和释放内存速度相对较慢堆的大小受限于系统的虚拟内存大小和操作系统的内存管理。 基本类型的变量如 number, boolean, string 等在 JavaScript 引擎中通常被存储在栈内存中 对象类型的变量如对象、数组等在 JavaScript 引擎中通常存储在堆内存中。当你创建一个对象时它的大小是不固定的因此它们被存储在堆上并且变量名在栈上只是一个指向堆内存地址的引用 变量关键字
var 在声明变量时可以为变量赋予一个初始值。若变量未出实话则其默认值为undefinedlet 在声明变量时可以为变量赋予一个初始值。若变量未出实话则其默认值为undefinedconst 声明用于定义一个常量定义时必须设置一个初始值
const PI 3.14区别 var 是es5中传统声明变量的方式具有函数作用域这意味着 var 声明的变量在声明它的函数内部是可见的。不管是在那个块的内部声明可以多次声明相同的变量而不会引发错误。 var x 1;
if(true){var x10
}let 引入了块级作用域只在声明它的块级作用域有效不允许重复声明同一变量存在暂时性死区Temporal Dead Zone,TDZ即在变量声明之前访问变量会抛出错误。 const 声明一个常量其值在声明后无法被重新赋值。但是对于对象或数组这样的引用类型其指向的内容是可以修改的 变量名 变量名也称为标识符标识符指变量、函数、参数、类、属性等的名字。其实简单理解可以把它看成 变量值的 一个称号就像人的姓名一样 变量名需要满足以下规则
允许包含字母、数字、下划线和$符号允许包含unicode转义序列如“\u0069”仅允许使用字母、unicode转义序列、下划线和$作为第一个字符不允许使用数字作为第一个字符标识符区分大小写不允许使用保留字作为标识符下图中是部分保留字