在作JS開發時,咱們將第三方複雜的插件進行封裝,而後對外公開一個很簡單的方法接口,這是開發時經常使用的方法,在JS裏,咱們的方法參數一般使用JQ的$.extend 擴展方法來實現spa
function extend(arr) { arr = $.extend({ name: 'zzl', sex: 'male', age: 31 }, arr || {}); alert("[Name:]" + arr.name + "[Sex:]" + arr.sex + "[Age:]" + arr.age); }
在頁面調用時:插件
<a href="#" onclick="extend();return false;">extends</a>
輸出內容爲:code
即若是咱們沒有爲arr指定值,它會把默認的值進行輸出,若是咱們爲arr對象的某個屬性賦值,結果會怎樣?orm
<a href="#" onclick="extend({name:'佔佔'});return false;">extends</a>
上面代碼,咱們改變了name屬性的性,結果輸出爲:對象
即,它只修改了指定屬性的值,對象的其它值保持爲原來的默認值。接口
JS中的||運算符與C#中的||做用相同,都是「邏輯或」,而在本例中它的用法是,若是arr對象爲空,而後將{}賦值給它,這個功能相似於C#裏的開發
??運算符,因此JS裏的||挺強大,呵呵。it