1. 程式人生 > >Javascript高級編程學習筆記(12)—— 引用類型(1)Object類型

Javascript高級編程學習筆記(12)—— 引用類型(1)Object類型

一點 下使用 rip 中括號 clas bsp 情況 https 可選參數

前面的文章中我們知道JS中的值分為兩種類型

基礎類型的值和引用類型的值

基礎類型的值我已經大概介紹了一下,今天開始後面幾天我會為大家介紹一下引用類型的值

Object類型

對象是引用類型的值的實例,在ECMA中引用類型是一種數據結構

用於將數據和功能組織到一起,在其它編程語言中通常也被稱為類

但是與其他語言中的類不一致,JS中並沒有在其他面向對象的編程語言中與類相關的接口

引用類型通常也被稱為對象定義,因為其描述的是一類對象所具有的屬性和方法

JS為我們提供了許多原始的引用類型

今天就介紹這些原始引用類型中的Object類型

在ES(ECMAScript)6之前我們看到的大多數引用類型的值都是Object的實例

雖然Object類型並不具備多少功能,但是對於在應用程序中存儲和傳輸數據確實是非常理想的選擇

創建Ojebct實例方法:

1. 使用new操作符

var person = new Object();
person.age = 21;
person.name = ‘lhy‘;

2.使用對象字面量

var person = {
    age:21,
    name:‘lhy‘
}

上面兩段代碼是等效的

在字面量的聲明方式中,左花括號{ 表示對象字面量的開始

因為處於等號的右邊,所以 { 處於表達式上下文中

表達式上下文中 { 表示一個表達式的開始,而位於一般的語句上下文中 { 表示代碼塊的開始

PS. 在早期的瀏覽器中,最後一個屬性後面帶逗號會報錯

還有一點比較重要的是:字面量的創建方法最好只在需要考慮對象可讀性的情況下使用,雖然字面量和new的方法是等效的,但是字面量創建對象時並不會調用Object()構造函數

基於以上描述,字面量由於其代碼量少、給人封裝數據的感覺,所以是我們給函數傳遞大量可選參數的首選方式

所以對函數的參數設計時,推薦將必須參數設為命名的變量,使用對象字面量來封裝可選參數

訪問對象

關於對象的訪問有兩種方式:

1. ‘.’操作符

2.中括號

從功能上來說兩者沒有區別,但是方括號可以通過變量來訪問屬性

所以對於 屬性中包含導致語法錯誤的字符、需要通過變量訪問等情形 可以使用方括號之外

其他的情況都不推薦使用中括號來訪問對象

Javascript高級編程學習筆記(12)—— 引用類型(1)Object類型