<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>basic_syntax</title>
<script>
/*
1, ECMAScript标识符:小驼峰命名法
2, 严格模式:ECMAScript5引入严格模式,这是一种不同的解析和执行模型
在严格模式下,ECMAScript3中的一些不确定的行为将得到处理,而对某些不安全的操作也会抛出错误
启用严格模式:"use strict"(编译指示),告诉支持JavaScript引擎切换到严格模式,也是为了不破坏ECMAScript语法而特意选定的语法
3,从字面含义上理解,保留字是语言中已经定义过的字,使用者不能再将这些字作为变量名或过程名使用。
关键字则指在语言中有特定含义,已经成为语法中一部分的那些字
在一些语言中,一些保留字可能并没有应用于当前的语法中,这就成了保留字与关键字的区别。一般出现这种情况可能是由 于考虑扩展性
一般来说,最好不要使用关键字和保留字作为标识符和属性名,以便与将来的ECMAScript版本兼容
4,ECMAScript的变量是松散类型的,即可以用来保存任何类型的数据
ECMAScript实际上是一种脚本在语法和语义上的标准。实际上JavaScript是由ECMAScript,DOM和BOM三者组成的
5,定义变量时使用var关键字
var message = "hi";
a,如上,定义变量的同时设置变量的值并不会把变量标记为字符串类型,初始化仅仅是个变量赋一个值而已
b,不建议修改变量所保存值的类型
6,局部变量 和 全局变量 (见下)
7,一条语句定义多个变量:
var message = "hi",
found = false,
age = 29;
*/
function sayHi(){
"use strict"; // 给未经声明的变量赋值在严格模式下会导致抛出ReferenceError错误
//var message = "hello"; // var 操作符定义的变量将成为定义该变量的作用域的局部变量
message = "hello"; // 省略var操作符创建的是一个全局变量(不建议使用,因难以维护,会产生混乱)
}
sayHi();
alert(message);
</script>
</head>
<body>
</body>
</html>
让学习“上瘾”,成为更好的自己!