1. 程式人生 > >使用json作為函數參數的好處(轉載)

使用json作為函數參數的好處(轉載)

var mon sonar 函數的調用 不用 我們 desc sha sss

1 我們可以隨時為一個函數添加/刪除參數或在任意參數位置添加新參數,而不會像傳統參數一樣必須按照規定的順序書寫,

而且每次添加或刪除函數某個參數都要函數內容進行修改。而使用JSON作為參數可以不用考慮參數順序。
看下面代碼演示:

<script type="text/javascript">
  <!--
  //普通方法
  function commonArg(name,age,desc){
    var userinfo="name: "+name+","+"age: "+age+"\ndescription: "+desc;
    alert(userinfo);
  }
  commonArg("yemoo",22,"a boy!")//每次調用都必須按照規定的參數順序書寫,如果寫成commonArg(22,"yemoo","desc")則返回信息就不對,每次都必須記憶每個參數意義及順序
  
  //JSON參數法
  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});
  //參數位置可以隨意寫
  //-->
  </script>

普通函數缺點很明顯:必須記憶參數意義和順序。而使用JSON的方法則不需要。

2、使用者對函數的調用非常方便,特別是在只需要傳入其中幾個或一個參數時。
看下面的代碼演示:

<script type="text/javascript">
  <!--
  //普通方法
  function commonArg(name,age,desc){
    var userinfo="name: "+(name||"empty")+"\tage: "+(age||0)+"\ndescription: "+desc||"empty";
    alert(userinfo);
  }
  //當只需要設定後面的參數時前面每個參數都需要設置為null
  commonArg("tempUser");
  commonArg(null,null,"a boy!");
  commonArg(null,20);
  
  //JSON參數法
  function jsonArg(info){
    var userinfo="name: "+(info.name||"empty")+"\tage: "+(info.age||0)+"\ndescription: "+(info.desc||"empty");
    alert(userinfo);
  }
  //每次只需要設置需要設定參數項
  jsonArg({name:"tempUser"});
  jsonArg({desc:"a boy!"});
  jsonArg({age:20});
  //-->
  </script>

JSON方法優點很明顯:每次只需傳入需要的參數即可,而不用考慮其他參數。

在使用中越來越覺得json的靈活,會慢慢喜歡上json的

使用json作為函數參數的好處(轉載)