JS高程3.基本概念(1)

1.语法

  (1)ECMAScript中的一切(变量,函数名和操作符)都是分别轻重缓急写的。

  (2)标识符

    标识符的首先个字符必须是字母,下划线或是新币符号。

    其他字符可以是字母,下划线,美金符号和数字。

    ECMAScript标识符利用驼峰大小写的格式。

  (3)严厉情势(strict
mode)

   严格形式是为着Javascript定义了一种不同的辨析与实施模型。在严格格局下,ECMAScript3中的一些不确定的行事将拿到处理,而且对一些不安全的  操作也会抛出荒谬。

    要在一切脚本中启用严厉形式,可以在顶部加上如下代码:

    “use
strict”;

    它是一个编译指示(pragma),用于告诉帮助的Javascript引擎切换来严俊格局。

 

2.关键字和保留字(高程P21)

 

3.变量

  ECMAScript的变量是高枕无忧类型的,可以保存任何类型的数额。

  定义变量使用 var 操作符。

注意:

  用 var
操作符定义的变量将成为定义该变量的效能域中的局部变量。即只要在函数中定义一个变量,当函数退出后就会被灭绝。

eg:

1 <script type="text/javascript">
2         function test(){
3             var message="hi";
4         }
5         test();
6         alert(message);
7     </script>

结果会见世错误:

ECMAScript 1

 

  这里message是在函数中利用了var定义的。当函数被调用时,就会创立该变量并为其赋值,之后这一个变量会立时被灭绝,所以当使用alert()函数时,会招致错误。

 

当省略var操作符时可以定义全局变量,这样假如调用两遍test()函数,那些变量就有了概念,就足以在函数外部的任什么地方方被访问到了。

1 <script type="text/javascript">
2         function test(){
3             message="hi";
4         }
5         test();
6         alert(message);
7     </script>

ECMAScript 2

注意:

  即便简易 var
操作符可以定义全局变量,可是不推荐这样做,因为在一些效用域中定义全局变量很难保障,而且假诺有意地忽视
var操作符,也会因为相应变量不会即刻就有定义而导致不必要的糊涂。

  给未经讲明的变量赋值在从严形式下会导致抛出ReferenceError错误。

ECMAScript,  在严苛形式下,不可以定义名为eval或arguments的变量,否则会出现语法错误。

  Javascript中了eval()函数,arguments对象。