JavaScript基本概念A
- 简介
如果需要了解这些概念, 您应该熟悉 JS 的基本知识。
- 弱类型
在也无需绞尽脑汁觉得到底采用 float、double,int 还是 short 或是 long 还是 String。只需这样定义变量 – var my_variable; 。
- 经常使用 ‘use strict’;
这行代码看起来像是字符串,而且也没有赋值给任何变量,但其实它是一个编译指示(pragma),用于告诉支持的JavaScript引擎切换到严格模式。这是为不破坏ECMAScript 3语法而特意选定的语法。
在函数内部的上方包含这条编译指示,也可以指定函数在严格模式下执行。
function () { 'use strict'; return a; }
上面的例子在 strict模式下会报出异常,程序并没有创建一个全局的变量 a ,而在非strict 模式下则会悄悄的创建一个全局的变量 a。
- 分号不是可有可无的
ECMAScript中的语句以一个分号结尾;如果省略分号,则由解析器确定语句的结尾,如下例所示:
var sum = a + b //正确,但不推荐 var diff = a-b; //正确,k推荐
虽然语句结尾的分号不是必需的,但我们建议任何时候都不要省略它。
- 作用域
与 c、c++ 或 Java 不同, JS 只有两个简单的作用域类型 - 全局级别和函数界别。所以, 在 JS 中, 如果, if, while ,for 不定义作用域块。代码如下:
function () { if (someCondition) { var a; } }
和下面的代码其实是一样的
function () { var a; if (someCondition) { // ... } }
还有就是变量一般都定义在最上面
function test() { 'use strict'; console.log(a); console.log(b); //console.log(x); var a = 10, b = 10; console.log(a); console.log(b); } test();
输出如下结果:
undefined undefined 10 10