基础概念:
任何语言的核心最基础层面一定包括:语法、操作符、数据类型、以及内置功能
大小写
ECMAScript中的一切都是区分大小写的,无论是变量操作符还是函数名
标识符
所谓标识符,就是变量函数或函数参数的名称,标识符有以下规则
1 第一个字符必须是字母_$剩下的字符可以是字母、数字、下划线、美元符号
2 标识符中的字母可以ASCII特殊字符但是不推荐
3 标识符推荐使用驼峰命名
4 关键字,保留字无法使用
注释
html
中的注释是<-- -->
js
中 注释是//
或者是/* */
严格模式
ES5
中增加,是一种不同 JS解析和执行模型,通过在脚本开头或者函数体内部增加·use strict· 字符这个预处理指令,开启严格模式,一些不规则 (ECMA3)写法在这里会抛出异常
关于分号:
ECMAScript
语句以;结尾,意味着解析器确定语句在哪里结束(不是必须),但是推荐,推荐的原因如下
推荐使用分号的原因
1 避免输入内容不完整
2 便于开发者通过删除空行来压缩代码
3 某些情况下能够提升性能
{花括号}
多条语句合并到一个代码块,通过花括号
{}
标识起始和结束,if
条件语句在执行一条代码块时可以省略花括号,但是不推荐
关键字和保留字:
ECMAScript
保留了例如控制语句特定操作,系统属性等一系列不允许自定义为标志符的名称,具体内容如下
break``typeof
....
变量
ECMAScript
变量是松散类型,变量可以保存·任何的数据类型·, 每个变量只是用于保存任意值的命名占位符,有三个关键字可以声明变量var
,let
,const
使用var需要注意
1 var 声明的变量是松散类型
2 var 声明变量的作用域
3 var 声明变量会有变量提升
let声明变量
1 let声明变量的也是松散类型
2 声明变量的作用域是块级作用域,并且不允许同一个作用域重复声明,冗余声明。
3 由于let
的块级作用域特性,在循环体中,如果使用let
可以避免循环体外的变量污染,同时也可以保证循环体内部代码块值的正确性
4 使用let
和var
声明同名变量同样会报错,声明冗余
5 使用let
会出现暂时性死区
6 全局声明,在枢纽作用域使用var
声明会自动成为window
对象的属性,但是使用let
不会成为window
对象的属性
const声明
const
和let
的行为基本一致,但是在声明时必须初始化该变量的值,并且不允许修改const
声明值的引用地址
规范
标签:const,语言,作用域,基础,js,let,var,声明,变量 From: https://www.cnblogs.com/czh0316/p/16961928.html1 不推荐使用var,有助于提升代码质量,因为变量有了明确的作用域,声明位置
2const
优先,let
次之,即使区分常量和变量