使用JSON作為函數(shù)的參數(shù)的優(yōu)缺點
一直對json不太懂,最近看了一些介紹才發(fā)現(xiàn),原來這個東西這么好用,下面就為大家介紹一下
1、我們可以隨時為一個函數(shù)添加/刪除參數(shù)或在任意參數(shù)位置添加新參數(shù),而不會像傳統(tǒng)參數(shù)一樣必須按照規(guī)定的順序書寫,而且每次添加或刪除函數(shù)某個參數(shù)都要函數(shù)內容進行修改。而使用JSON作為參數(shù)可以不用考慮參數(shù)順序。
看下面代碼演示:
<script type="text/javascript">
<!--
//普通方法
function commonArg(name,age,desc){
var userinfo="name: "+name+","+"age: "+age+"\ndescription: "+desc;
alert(userinfo);
}
commonArg("yemoo",22,"a boy!")//每次調用都必須按照規(guī)定的參數(shù)順序書寫,如果寫成commonArg(22,"yemoo","desc")則返回信息就不對,每次都必須記憶每個參數(shù)意義及順序
//JSON參數(shù)法
function jsonArg(info){
var userinfo="name: "+info.name+"\tage: "+info.age+"\ndescription: "+info.desc;
alert(userinfo);
}
jsonArg({name:"blue",age:22,desc:"a gril?"});
jsonArg({desc:"not a people!",name:"sss",age:0});
//參數(shù)位置可以隨意寫
//-->
</script>
普通函數(shù)缺點很明顯:必須記憶參數(shù)意義和順序。而使用JSON的方法則不需要。
2、使用者對函數(shù)的調用非常方便,特別是在只需要傳入其中幾個或一個參數(shù)時。
看下面的代碼演示:
<script type="text/javascript">
<!--
//普通方法
function commonArg(name,age,desc){
var userinfo="name: "+(name||"empty")+"\tage: "+(age||0)+"\ndescription: "+desc||"empty";
alert(userinfo);
}
//當只需要設定后面的參數(shù)時前面每個參數(shù)都需要設置為null
commonArg("tempUser");
commonArg(null,null,"a boy!");
commonArg(null,20);
//JSON參數(shù)法
function jsonArg(info){
var userinfo="name: "+(info.name||"empty")+"\tage: "+(info.age||0)+"\ndescription: "+(info.desc||"empty");
alert(userinfo);
}
//每次只需要設置需要設定參數(shù)項
jsonArg({name:"tempUser"});
jsonArg({desc:"a boy!"});
jsonArg({age:20});
//-->
</script>
JSON方法優(yōu)點很明顯:每次只需傳入需要的參數(shù)即可,而不用考慮其他參數(shù)。
JSON真是一個好用的東西,不用在ajax方面還是在js的其他方面都體現(xiàn)了其方便靈活的特性,的確應該好好去挖掘和學習json。
相關文章
詳解JSON1:使用TSQL查詢數(shù)據和更新JSON數(shù)據
這篇文章主要介紹了使用TSQL查詢數(shù)據和更新JSON數(shù)據,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-11-11
js解析與序列化json數(shù)據(一)json.stringify()的基本用法
對象有兩個方法:stringify()和parse()。在最簡單的情況下,這兩個方法分別用于把JavaScript對象序列化為JSON字符串和把JSON字符串解析為原生JavaScript2013-02-02

