调用JavaScript函数时,将所有值作为一个JSON对象传递是一种好习惯吗?

时间:2017-11-08 16:28:37

标签: javascript json function

我们应该使用一个JSON对象并将其传递给函数,还是应该传递几个独立的参数?

例如,使用JavaScript提交HTML表单时会有一个用例。

我的猜测是,当你有20个值时,处理一个大对象比处理20个不同的参数更容易。另外我想当你有一个参数时,维护一个函数会更容易,但这也意味着你需要在使用静态类型语言时验证函数中的对象属性。由于JavaScript不是静态类型语言,我没有看到使用分离参数的好处(我们必须手动验证函数中的每个参数)。

两种方式的优点和缺点是什么,有推荐的方法吗?

感谢。

2 个答案:

答案 0 :(得分:1)

我会说没有明确的答案。取决于你想要达到的目标。对于一组未定义的表单字段,我将其作为一个对象传递。通常我作为一个对象传递"属于#34;,例如某事物的选项对象。

另外,使用es6,你可以"樱桃挑选"如果你只需要传递的对象的特定部分。

function({ key }) {
    return key;
}

相同
function(obj) {
    return obj.key;
}

答案 1 :(得分:1)

  

我们应该使用一个JSON对象并将其传递给函数,还是应该传递几个独立的参数?

首先,它不是一个JSON对象,而是一个简单的javascript对象,there's no such a thing "JSON Object"

并且回答你的问题,是的,最好传递一个param对象,而不是仅仅在有几个params的情况下单独传递所有params,即使这些params可以作为带有arguments关键字的数组。

有些JS框架称它为options对象,例如对于用作options对象的模块。