我需要在javascript中构建一个可以处理不同类型变量的多态函数。整数和浮点数。
那可能吗?最好的方法是什么?
Javascript 中没有整数数据类型,因此您必须检查值是什么,即它是否有任何小数部分:
if (value % 1 != 0) {
// use it as integer
} else {
// use it as floating point
}
最好的解决方案是不依赖方法重载(这正是您在此处寻找的,真的,并且在 JS 中不可用),而是使用不同的函数名称并具有两个函数。
这意味着您必须在调用端决定调用哪个函数,但这与其他语言(如 Java、C#、C)类似,在编译时做出此决定。
是的。Javascript 没有函数参数类型化。整数和浮点数是一类类型的对象 - 数字