Javascript 使用JSON作为函数的参数

366 阅读1分钟
//普通方法 
function commonArg(name,age,desc){
    var userinfo="name: "+name+","+"age: "+age+"\ndescription: "+desc;
    alert(userinfo);
}
commonArg("yemoo",22,"a boy!")
//缺陷:1、若参数过多时,导致括号内的长度过长
//     2、只能按照参数的顺序,进行传参,否则返回的信息会不正确
//     3、当不想传参时,则需要设置null值

//JSON传参方式
function JsonArg(json){
    this.name = json.name;
    this.age = json.age;
    this.desc = json.desc;
}
JsonArg.prototype.user = function(){
    console.log('name:'+this.name+'age:'+ this.age + '特征:'+(this.desc||empty));
}
var jsonArg1 = new JsonArg({name:'chen',age:20,desc:'是个男的'});
var jsonArg2 = new JsonArg({name:'chen',age:20});
jsonArg1.user();
jsonArg2.user();
  • 可以减少参数的传入量。只需要传一个进去即可
  • 由于JSON有key值,所以传实参时,不需要过去主义顺序
  • 每次只需要传入需要的参数即可
  • JSON,尽量使用单层结构