这应该是一个简单的问题。
我使用 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
}
*/
最佳答案
是的,在使用之前,您可以取 Array.isArray
用于检查变量是否是数组。
The
Array.isArray()
function determines whether the passed value is anArray
.
如果数据来自未知来源,例如使用图书馆, vendor 事先不知道用户提供的数据类型,则有必要检查类型。
一些库对数据使用混合模式,其中数据可以是单个项目或项目数组。在这种情况下,需要进行检查以确定该项目是否必须包装在数组中。
function myFunction(array1, array2) {
if (!Array.isArray(array1)) return null;
if (!Array.isArray(array2)) return null;
// some array action here with arrays array1,array2
}
关于javascript - 是否应该在 JavaScript 中验证参数类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46382228/