標籤:不同的 condition 指示 轉換 建立 test style 瞭解 script
如果需要瞭解這些概念, 您應該熟悉 JS 的基本知識。
弱類型語言 是相對強型別語言來說的在強型別語言中,變數類型有多種,例如int char float boolean 等不同的類型相互轉換有時需要強制轉換,而javascript只有一種類型var ,為變數賦值時會自動判斷類型並進行轉換所以javascript是弱語言就體現在變數定義類型 var 上了 。
這行代碼看起來像是字串,而且也沒有賦值給任何變數,但其實它是一個編譯指示(pragma),用於告訴支援的JavaScript引擎切換到strict 模式。這是為不破壞ECMAScript 3文法而特意選定的文法。
在函數內部的上方包含這條編譯指示,也可以指定函數在strict 模式下執行。
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();
輸出如下結果:
undefinedundefined1010
JavaScript基本概念A