進來看,讓你躺着就把JavaScript學完了(二)

JavaScript基礎語法2

若是你想成爲一名優秀的java架構師,看這裏 → 樂字節免費公開課(騰訊課堂)javascript

如須要跟多資料請點擊右側 → 這是一條不歸路,有禿頭風險,請慎重選擇!html

語句和註釋

​ JavaScript程序的執行單位爲行(line),也就是一行一行地執行。通常狀況下,每一行就是一個語句。java

​ 語句(statement)是爲了完成某種任務而進行的操做,語句以分號結尾,一個分號即表示一個語句結束。多個語句能夠寫在一行內(不建議這麼寫代碼),可是一行寫多條語句時,語句必須以分號結尾。數組

​ 表達式不須要分號結尾。一旦在表達式後面添加分號,則JavaScript引擎就將表達式視爲語句,這樣會產生一些沒有任何意義的語句。架構

單行註釋:用//起頭;
多行註釋:放在/* 和 */之間。
兼容html註釋方式:<!-- -->

標識符和關鍵字

標識符就是一個名字,用來給變量和函數進行命名,有特定規則和規範函數

​ 規則:測試

由Unicode字母、_、$、數字組成、中文組成
(1)不能以數字開頭
(2)不能是關鍵字和保留字
(3)嚴格區分大小寫

​ 規範:this

(1)見名知意
(2)駝峯命名或下劃線規則

關鍵字也稱保留字,是被JavaScript徵用來有特殊含義的單詞debug

arguments、break、case、catch、class、const、continue、debugger、default、delete、do、else、enum、eval、export、extends、false、finally、for、function、if、implements、import、in、instanceof、interface、let、new、null、package、private、protected、public、return、static、super、switch、this、throw、true、try、typeof、var、void、while、with、yield、Infinity、NaN、undefined

變量

​ 變量即一個帶名字的用來存儲數據的內存空間,數據能夠存儲到變量中,也能夠從變量中取出數據。code

變量的聲明

​ JavaScript是一種弱類型語言,在聲明變量時不須要指明數據類型,直接用var修飾符進行聲明。

​ 變量聲明和賦值:

// 先聲明再賦值
var a ;    
a = 10;
// 聲明同時賦值
var b = 20;

變量的注意點

(1)若只聲明而沒有賦值,則該變量的值爲undefined。

var box;
console.log(box);

(2)變量要有定義才能使用,若變量未聲明就使用,JavaScript會報錯,告訴你變量未定義。

console.log(box2);

(3)能夠在同一條var命令中聲明多個變量。

var a, b, c = 10;
console.log(a,b,c);

(4)若使用var從新聲明一個已經存在的變量,是無效的。

var box = 10
var box;

(5)若使用var從新聲明一個已經存在的變量且賦值,則會覆蓋掉前面的值

var box = 10;
var box = 25;

(6)JavaScript是一種動態類型、弱類型語言,也就是說,變量的類型沒有限制,能夠賦予各類類型的值。

var box = 'hello world';
box = 10;

變量提高

​ JavaScript 引擎的工做方式是,先解析代碼,獲取全部被聲明的變量,而後再一行一行地運行。這形成的結果,就是全部的變量的聲明語句,都會被提高到代碼的頭部,這就叫作變量提高。

console.log(msg);
var msg = "so easy";

// 變量提高,至關於下面的代碼
var msg;
console.log(msg);
msg = "so easy";

// 說明: 最後的結果是顯示undefined,表示變量msg已聲明,但還未賦值。

​ 注意:變量提高只對 var 命令聲明的變量有效,若是變量不是用 var 命令聲明的,就不會發生變量提高。

console.log(msg);
msg = "error";

數據類型

​ 雖然說JS是弱類型語言,變量沒有類型,但數據自己是有類型的。針對不一樣的類型,咱們能夠進行不一樣的操做。

​ JavaScript 中有6 種數據類型,其中有五種簡單的數據類型:UndefinedNull布爾數值字符串。一種複雜數據類型Object

數  值(Number): 整數和小數(好比 1 和 3.14)
字符串(String): 字符組成的文本(好比"Hello World")
布爾值(Boolean):true(真)和 false(假)兩個特定值
Undefined:       表示「未定義」或不存在,即此處目前沒有任何值
Null:            表示空缺,即此處應該有一個值,但目前爲空
對象(object)(引用) : 各類值組成的集合
    1)、對象(object){name:」zhangsan」,age:」18」}
    2)、數組(array)[1,2,3]
    3)、函數(function)function test() {}

undefined

​ undefined類型的值是undefined。

​ undefined 是一個表示"無"的原始值,表示值不存在。

​ 出現undefined的常見狀況:

​ (1)當聲明瞭一個變量而沒有初始化時,這個變量的值就是undefined

var box;
console.log(box); //undefined

​ (2)調用函數時,該函數有形參,但未提供實參,則該參數爲undefined。

function noData(str) { // js函數形參只須要變量名便可
    console.log(str); // undefined
}
noData(); // 調用方法時,未傳遞參數

​ (3)函數沒有返回值時,默認返回 undefined。

// 方法沒有返回值
function noData() { 
    console.log("Hello"); 
}
var re = noData();// 定義變量接收無返回值的方法
console.log(re);

null

​ null類型是隻有一個值的數據類型,即特殊的值null。它表示空值,即該處的值如今爲空,它表示一個空對象引用。

​ 使用Null類型值時注意如下幾點:

​ 1)使用typeof操做符測試null返回object字符串。

​ 2)undefined派生自null,因此等值比較返回值是true。未初始化的變量和賦值爲null的變量相等。

console.log(undefined == null);
var box = null; // 賦值爲null的變量
var a; // 未初始化的變量
console.log(a == box);    // 兩個的值相等

布爾類型

​ 布爾類型有兩個值:true、false。經常使用來作判斷和循環的條件

數值型

​ 數值型包含兩種數值:整型和浮點型。

​ 1)全部數字(整型和浮點型)都是以 64 位浮點數形式儲存。因此,JS中1 與 1.0 相等,並且 1 加上 1.0 獲得的仍是一個整數。浮點數最高精度是17位小數,因爲浮點數運算時可能不精確,儘可能不要使用浮點數作判斷。

​ 2)在存儲數值型數據時自動將能夠轉換爲整型的浮點數值轉爲整型。

console.log(1 == 1.0); // true
console.log(1 + 1.0); // 2
var num = 8.0; // 自動將能夠轉換爲整型的浮點數轉爲整型
console.log(num); // 8

字符串

​ 使用 ' ' 或 " "引發來,如:'hello',"good"。

​ 使用加號 '+' 進行字符串的拼接,如:console.log('hello' + ' everybody');

對象

​ 對象是一組數據和功能的集合。

​ 說明:

​ {}:表示使用對象字面量方式定義的對象。空的大括號表示定義包含默認屬性和方法的對象。

相關文章
相關標籤/搜索