JavaScript基本概念A

  • 簡介

若是須要了解這些概念, 您應該熟悉 JS 的基本知識。c++

  • 弱類型

在也無需絞盡腦汁以爲到底採用 float、double,int 仍是 short 或是 long 仍是 String。只需這樣定義變量  – var my_variable; 。函數

 

  • 常常使用 ‘use strict’;

這行代碼看起來像是字符串,並且也沒有賦值給任何變量,但其實它是一個編譯指示(pragma),用於告訴支持的JavaScript引擎切換到嚴格模式。這是爲不破壞ECMAScript 3語法而特地選定的語法。spa

在函數內部的上方包含這條編譯指示,也能夠指定函數在嚴格模式下執行。code

 

function () {
    'use strict';
    return a;
}

上面的例子在 strict模式下會報出異常,程序並無建立一個全局的變量 a ,而在非strict 模式下則會悄悄的建立一個全局的變量 a。blog

 

  • 分號不是無關緊要的

ECMAScript中的語句以一個分號結尾;若是省略分號,則由解析器肯定語句的結尾,以下例所示:ip

var sum = a + b //正確,但不推薦
var diff = a-b; //正確,k推薦

雖然語句結尾的分號不是必需的,但咱們建議任什麼時候候都不要省略它。作用域

  •  做用域

與 c、c++ 或 Java 不一樣, JS 只有兩個簡單的做用域類型 - 全局級別和函數界別。因此, 在 JS 中, 若是, if, while ,for 不定義做用域塊。代碼以下:字符串

function () {
    if (someCondition) {
        var a;
    }
}

和下面的代碼實際上是同樣的it

function () {
    var a;
    if (someCondition) {
        // ...
    }
}

還有就是變量通常都定義在最上面io

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
相關文章
相關標籤/搜索