1. 程式人生 > >20181212——第三章基本概念

20181212——第三章基本概念

語法
區分大小寫,識別符號,註釋,嚴格模式,語句

關鍵字保留字

變數
var 宣告的區域性變數, 不用var操作符單蹦一個變數名就是全域性變數
資料型別
Undefined,Null,Boolean,String,Number 還有一種複雜型別Object
object實質上是由一組無序的名值對組成的,

typeof操作符,判斷物件是什麼型別

undefined
宣告變數之後,未對其初始化
函式沒有返回值
陣列中某一項沒有值

Null
Null值表示一個空物件指標

Object物件
object每一個例項都具有下列方法和屬性
constructor:儲存用於建立當前物件的函式,建構函式(construtor)就是object
hasOwnProperty(propertyName)用於檢查給定的屬性在當前物件例項中(而不是在例項的原型中),其引數物件必須以字串的形式指定,o.hasOwnProperty(“name”)
isPropertyOf(OBJECT):用於檢查傳入的物件是否是傳入物件的原型

操作符
一元操作符
位操作符
布林操作符

語句
條件語句
迴圈語句

with語句
定義 with 語句的目的主要是為了簡化多次編寫同一個物件的工作,如下面的例子所示:
var qs = location.search.substring(1);
var hostName = location.hostname;
var url = location.href;
上面幾行程式碼都包含 location 物件。如果使用 with 語句,可以把上面的程式碼改寫成如下所示:
with(location){
var qs = search.substring(1);
var hostName = hostname;
var url = href;
}

理解引數
ECMAScript 函式的引數與大多數其他語言中函式的引數有所不同。ECMAScript 函式不介意傳遞進
來多少個引數,也不在乎傳進來引數是什麼資料型別。也就是說,即便你定義的函式只接收兩個引數,
在呼叫這個函式時也未必一定要傳遞兩個引數。可以傳遞一個、三個甚至不傳遞引數,而解析器永遠不
會有什麼怨言。之所以會這樣,原因是 ECMAScript 中的引數在內部是用一個數組來表示的。函式接收
到的始終都是這個陣列,而不關心陣列中包含哪些引數(如果有引數的話)。如果這個陣列中不包含任
何元素,無所謂;如果包含多個元素,也沒有問題。實際上,在函式體內可以通過 arguments 物件來
訪問這個引數陣列,從而獲取傳遞給函式的每一個引數。

沒有過載
後一個會覆蓋前一個