应该在JavaScript中验证参数类型吗?

时间:2017-09-23 17:14:39

标签: javascript

这应该是一个简单的问题。

我使用JavaScript已经有好几年了,强类型语言(例如Java和C ++)的使用时间更长。我记得,在强类型语言中,必须先检查参数的类型,然后才能使用它们,这是错误代码的症状。但是,这会延续到像JavaScript这样的语言吗?

例如,客户端JavaScript中的

/ *,我发现自己会自动执行以下操作:

function myFunction(array1, array2)
{
    if (array1 !== Array.from(array1)) return null;
    if (array2 !== Array.from(array2)) return null;
    // some array action here with arrays array1,array2
}

* /

2 个答案:

答案 0 :(得分:1)

是的,在使用之前,您可以使用Array.isArray来检查变量是否为数组。

  

Array.isArray() 函数确定传递的值是否为Array

如果数据来自未知来源,则需要检查类型,例如使用图书馆,供应商事先并不知道用户提供的数据类型。

某些库对数据使用混合模式,其中数据可以是单个项目或项目数组。在这种情况下,需要进行检查以确定是否必须将项目包装在数组中。

function myFunction(array1, array2) {
    if (!Array.isArray(array1)) return null;
    if (!Array.isArray(array2)) return null;
    // some array action here with arrays array1,array2
}

答案 1 :(得分:0)

我检查它的唯一地方是在编写测​​试用例时。

我想说测试用例就是一个很好的例子。我们将检查正面和负面情景。我希望你明白,如果不让我知道。

相关问题