1 JavaScript功能
- 直接写入 HTML 输出流(在 HTML 输出中使用 document.write,如在文档加载后使用该方法会覆盖整个文档)
- 对事件进行响应(如鼠标事件、键盘事件等)
- 改变HTML内容(innerHtml)
- 改变HTML图像
- 改变HTML样式
- 验证输入
2 JavaScript用法
- 在HTML中插入<script>标签,JavaScript脚本代码位于且必须位于<script>与</script>标签之间
- 可以直接在<script>与</script>标签之间编写JavaScript脚本代码
- 也可以将JavaScript脚本代码集中编写到类型为.js的文件中,通过<script src = "">标签的src引入(.js文件中不能包含 <script> 标签)
- <script>与</script>标签,可以放在HTML的<head>或者<body>部分,或者同时存在于两个部分中
- 通常把函数放入 <head> 部分中,或者放在页面底部,且集中放到同一位置,避免干扰HTML页面其他内容
3 JavaScript输出
JavaScript 没有任何打印或者输出的函数,但可通过以下4种方式来输出数据:
- 使用 window.alert() 弹出警告框
- 使用 document.write() 方法将内容写到 HTML 文档中
- 使用 innerHTML 写入到 HTML 元素
- 使用 console.log() 写入到浏览器的控制台
4 JavaScript语法
4.1 JavaScript字面量与变量
在指令式语言中:
- 变量通常是可变的,字面量是一个恒定的值
- 变量是一个名称,字面量是一个值
4.1.1 JavaScript 字面量
在编程语言中,一般固定值称为字面量,JavaScript的字面量有:
- 数字(Number)字面量 可以是整数或者是小数,或者是科学计数(e)
- 字符串(String)字面量 可以使用单引号或双引号
- 表达式字面量 用于计算
- 数组(Array)字面量 定义一个数组
- 对象(Object)字面量 定义一个对象
- 函数(Function)字面量 定义一个函数
4.1.2 JavaScript 变量
- 变量用于存储数据值,也可以把变量看做存储数据或信息的容器
- JavaScript 使用关键字 var 来声明(或创建或定义)变量
- 变量声明后未赋值,则为空(Javascript语言中空值为undefined)
-
- 变量声明后使用等号(=)来为变量赋值
- 变量既可以先声明不赋值,也可声明的同时进行赋值
- 重新声明同名变量(重置变量)不赋值,则之前的变量的值将保持不变,如赋值,则会改变为新值
- Javascript语言中一条语句中可声明很多变量。该语句以 var 开头,并使用逗号分隔变量即可
- var关键字声明局部变量,作用域仅支持函数,对块级({})、循环内声明变量都会当作全局变量(可详见与ES6的let关键字区别)
- 在代码开始处集中声明需要的变量,是编程的好习惯
- 变量的命名规则:
- 变量必须以字母开头
- 变量也能以 $ 和 _ 符号开头(不推荐)
- 变量名称对大小写敏感(y 和 Y 是不同的变量)
- 变量的作用域
- 在 ES6 之前,JavaScript 只有两种作用域: 全局变量 与 函数内的局部变量
- 全局变量
- 在函数外声明的变量作用域是全局的
- 在 JavaScript 程序的任何地方都可以访问
- 在循环体内外,使用 var 关键字声明的变量都是全局变量
- 函数内的局部变量
- 在函数内声明的变量作用域是局部的(函数内)
- 函数内使用 var 声明的变量只能在函数内访问,如果不使用 var 则是全局变量
- ES6及以后,var、let声明变量区别
- 使用 var 关键字声明的变量不具备块级作用域的特性,在 {} 外依然能访问到变量。
-
ES6 之前无块级作用域概念。ES6 增加 let 关键字来实现块级作用域,其声明的变量只在 let 命令所在的代码块 {} 内能访问,{} 外不能访问
- 在循环体内外,使用 var 关键字声明的变量都是全局变量。而使用 let 关键字声明的变量作用域只在循环体内,循环体外的变量不受影响
-
使用var关键字声明的全局作用域变量属于window对象且在任何地方都可修改。使用let关键字声明的全局作用域变量不属于window对象
-
在相同的作用域或块级作用域中,不能使用let关键字来重置var关键字声明的变量
-
在相同的作用域或块级作用域中,不能使用let关键字来重置let关键字声明的变量
-
let关键字在不同作用域,或不用块级作用域中是可以重新声明赋值的
-
在相同的作用域或块级作用域中,不能使用const关键字来重置var和let关键字声明的变量
-
在相同的作用域或块级作用域中,不能使用const关键字来重置const关键字声明的变量
-
const 关键字在不同作用域,或不同块级作用域中是可以重新声明赋值的
-
var关键字定义的变量可以先使用后声明(因自动变量提升)
-
let关键字定义的变量需要先声明再使用
- const关键字定义的常量,声明时必须进行初始化,且初始化后不可再修改
4.2 JavaScript 操作符
- JavaScript使用 算术运算符 来计算值
- JavaScript使用赋值运算符给变量赋值
- JavaScript语言有多种类型的运算符:
- 赋值,算术和位运算符
- 条件,比较及逻辑运算符
4.3 JavaScript 语句
在 HTML 中,JavaScript 语句用于向浏览器发出命令,告诉浏览器该做什么
4.3.1 分号(;)
- JavaScript 语句用分号(;)分隔,使用分号可以在一行中编写多条语句
- 通常可在每条可执行的语句结尾添加分号
- 在 JavaScript 中,用分号来结束语句是可选的(也有不带有分号的案例)
4.3.2 JavaScript 代码
- JavaScript 代码是 JavaScript 语句的序列。
- 浏览器按照编写顺序依次执行每条语句。
4.3.3 JavaScript 代码块
JavaScript 代码可以分批地组合起来形成代码块:
- 代码块以左花括号({)开始,以右花括号(})结束
- 代码块的作用是一并地执行语句序列
4.3.4 JavaScript 语句标识符
- JavaScript 语句通常以一个 语句标识符 为开始,并执行该语句
- 语句标识符是保留关键字不能作为变量名使用
- JavaScript 语句标识符 (关键字) :
- break 用于跳出循环
- catch 语句块,在 try 语句块执行出错时执行 catch 语句块
- continue 跳过循环中的一个迭代
- do ... while 执行一个语句块,在条件语句为 true 时继续执行该语句块
- for 在条件语句为 true 时,可以将代码块执行指定的次数
- for ... in 用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)
- function 定义一个函数
- if ... else 用于基于不同的条件来执行不同的动作
- return 退出函数
- switch 用于基于不同的条件来执行不同的动作
- throw 抛出(生成)错误
- try 实现错误处理,与 catch 一同使用
- var 声明一个变量
- while 当条件语句为 true 时,执行语句块
4.3.5 空格
- JavaScript 会忽略多余的空格
- 可以向脚本添加空格,来提高其可读性
4.3.6 对代码行进行折行
可以在文本字符串中使用反斜杠(\)对代码行进行换行
4.4 JavaScript 关键字
- JavaScript 关键字用于标识要执行的操作
- 和其他任何编程语言一样,JavaScript 保留了一些关键字为自己所用,如var 关键字告诉浏览器创建一个新的变量
4.5 JavaScript 注释
不是所有的 JavaScript 语句都会当作是"命令"执行,注释的语句或字符则会被浏览器忽略:- 单行注释(双斜杠 // ),//后的同一行内容将会被浏览器忽略
- 多行注释(/**/),/*在之间的内容(含多行)将会被浏览器忽略*/
4.6 JavaScript 字母大小写敏感
JavaScript 对大小写是敏感的。如函数 getElementById 与 getElementbyID 是不同的,变量 myVariable 与 MyVariable 也是不同的
4.7 JavaScript 字符集
JavaScript 使用 Unicode 字符集
标签:语句,知识,变量,作用域,JavaScript,汇总,关键字,声明 From: https://www.cnblogs.com/cqycb720930/p/17110721.html