首页 > 编程语言 >前端进化笔记-JavaScript(二)

前端进化笔记-JavaScript(二)

时间:2023-05-01 18:22:04浏览次数:38  
标签:变量 作用域 前端 JavaScript 笔记 let var 声明

因为作者学过其他类c语言,就不对大家都熟悉的内容进行赘述了。

语法

JavaScript区分大小写

标识符:变量,函数,属性,函数参数的名称

  • 第一个字符必须是字母,下划线(_),美元符号($);
  • 关键字、保留字、true、false和null不能用作标识符

作者在后续阅读的过程中,发现对各种名称不熟悉导致阅读不畅,所以在这里建议大家把一些名词和对应内容稍微记一下,如:标识符,操作符,关键字,属性,方法等

es5引入严格模式概念,这是一个让人拍案叫绝的改动,JavaScript繁多的表达形式和便捷性着实让人又爱又恨。代码为"use strict";

关键字:有一些特殊用途,如控制语句等,这里简单枚举几个例子帮助理解:return break if this while var

保留字:未来可能用作关键字的字符

变量

JavaScript中的变量声明很随意,无论什么变量都可以用var声明var message;甚至可以不声明message = 100;当然你别忘了分号都可以不打(当然这样说只是吐槽JavaScript的随意,而不是这样用)

var

var定义的变量会成为它所在函数的局部变量,该变量在退出时就会被销毁,在函数外部是无法访问到的。而不用var直接声明的变量是全局变量,调用一次函数后就可以被访问。

如果在全局作用域中使用,则会成为window对象的属性。

使用var声明的变量会自动提升到函数作用域顶部,所以特意讲变量声明放在访问前不是必须的

let

let声明的变量只存在于块作用域,即{}内部,在同一个作用域中一个变量名只能声明一次,而var则允许出现冗余声明。注意,分别使用let var定义同名变量也会报错。

用let在全局作用域使用,不会成为window对象的属性,但仍然是全局作用域声明的,要注意声明冗余。

let声明不会对变量进行提升

const

与let基本相同,但是其在声明时必须初始化变量,同时此变量不允许修改。但如果是对象,修改对象内部属性的值是允许的

数据类型

Undefined Null Boolean Number String Symbol Object

在数据类型之前,typeof操作符是用来确定变量数据类型的手段。大部分typeof对数据类型的返回值是其小写形式,但有一些是例外。

  • object表示值为对象或null
  • function表示值为函数

标签:变量,作用域,前端,JavaScript,笔记,let,var,声明
From: https://www.cnblogs.com/wlhxqtothetop/p/17366801.html

相关文章

  • JavaWeb复习笔记
    MysqlsqlDDLDMLDQL约束设计多表查询内连接外连接子查询事务......
  • stm32cubemx 笔记
    1、时间频率配置界面  FSMC-> FlexibleStaticMemoryController,即灵活的静态存储器控制器->专门用于连接外部存储器的总线接口。FSMC可连接到各种外部存储器,包括SRAM、NORFlash、NANDFlash、LCD显示器  FCLK->FCLK的作用是提供给FLASH读取的时钟,以便芯片内部的程序......
  • java-echart报表插件使用笔记
    java-echart报表插件使用笔记  报表插件Echart java类 packagecom.spring.controller;importjava.io.IOException;importjava.util.Arrays;importjava.util.Date;importjava.util.List;importjavax.servlet.http.HttpServletRequest;importjavax.servle......
  • 3月代码大全阅读笔记3
    之所以阅读这本书,是想在阅读风格较为轻松的《程序员修炼之道》之后阅读一本更细致、更严肃的“进阶”读物。第一部分打好基础第一章欢迎进入软件构建的世界软件构建的定义:包括编码与调试、单元测试、规划构建、集成等,没有给出一个明确的定义。软件构建的重要性:软件构建......
  • 2月构建之法其余阅读笔记
    第十二章用户体验12.1用户体验的要素用户的第一印象从用户的角度考虑问题软件服务始终都要记住用户的选择(长期的使用只会使软件更好用)短期刺激长期影响不让用户犯简单的错误注重用户体验和质量情感设计12.3评价标准对于一个软件的用户界面,我们有没有什么评价标准呢?......
  • 2月构建之法七八章阅读笔记
    第七章MSF微软公司中关于软件开发的思想和宣言有一个方法论——微软解决方案框架(MicrosoftSolutionFramework,MSF),也就是微软推荐的软件开发方法7.2MSF基本原则推动信息共享与沟通(Fosteropencommunications)为共同的远景而工作(Worktowardasharedvision)“共同的......
  • 2月构建之法九十章阅读笔记
    第九章项目经理9.1PM是啥软件团队里除了能写代码、测试代码和画图做设计的成员,还有一类角色,不做上面这些事情但也很重要,我们叫他们项目经理——PMPM的M就是Manager,但是P有这几种:ProductManager、ProjectManager、ProgramManager,在不同的行业和公司,他们的作用各不相同。接下......
  • 3月代码大全阅读笔记2
    第7章:高质量的子程序7.1为什么要创建子程序?降低复杂度,让每段代码都具有单一职责;引入中间、易懂的抽象;避免代码重复;支持子类化;隐藏顺序;隐藏指针操作;提高可移植性;简化复杂的布尔判断:把一切复杂的判断放入单独的函数中;改善性能:性能一次优化,能遍布到所有调用点;确保所有......
  • 2023.4 做题笔记
    出于一些原因,只有4.21往后的题。LOJ6481VisualPython++考虑贪心。非常容易想到,从左往右扫,每次扫到一个右下角时就匹配一个在它上面但是高度差最小的左上角,如果有多个同一高度的可以不用考虑顺序,因为边界重合的情况是不合法的。对于一种匹配方案,怎么判断它合不合法呢?我们同......
  • 「学习笔记」SPFA 算法的优化
    与其说是SPFA算法的优化,倒不如说是Bellman-Ford算法的优化。栈优化将原本的bfs改为dfs,在寻找负环时可能有着更高效的效率,但是最坏复杂度为指数级别。voiddfs_spfa(intu){ if(fg)return; vis[u]=true; for(pilit:son[u]){ intv=it.first; llw=......