我即将使用源内容跟踪器在基于 c++ Web 的 IDE上将我的 C++ 代码转换为 javascript我希望转换后的变量不仅是一个var
,而且是一个类似 int 的东西,以便它可以检测分配的值是否有效
更新:知道javascript中的int和float无法区分使用typeof
那么检测c ++ float变量是否具有有效的float值的最佳方法是什么?与检测 c++ int 变量是否具有有效的 int 值相同?
我即将使用源内容跟踪器在基于 c++ Web 的 IDE上将我的 C++ 代码转换为 javascript我希望转换后的变量不仅是一个var
,而且是一个类似 int 的东西,以便它可以检测分配的值是否有效
更新:知道javascript中的int和float无法区分使用typeof
那么检测c ++ float变量是否具有有效的float值的最佳方法是什么?与检测 c++ int 变量是否具有有效的 int 值相同?
JavaScript中没有int
,只有number
. 此外,JavaScript 中的变量不是强类型的。类型由分配的值定义。
如果要确定分配的值是否为数字,可以使用typeof exampleVar === 'number'
.
也可以看看:
JavaScript 和 C++ 是非常不同的野兽。传统上,JavaScript 中的变量不是强类型的,这就是您可以这样做的原因:
var x = 5; // x is a number
x = 'foo'; // now x is a string
x = {}; // now an object
x = []; // now an array (which is also an object)
x = false; // etc., etc.
在 C++ 中,如果您声明x
为 an,int
则编译器将不允许该代码。JavaScript 中没有这样的检查。
如果你真的想要类型安全,那么如果你使用Google 的 Closure Compiler 之类的东西编译你的 JavaScript ,就会有一些接近它的东西。这涉及使用特殊格式的注释来注释您的 JavaScript 代码,使编译器能够在一定程度上验证您的代码中输入的一致性。它远非完美,除了非常严肃的™ 项目外,我不会推荐它,因为它会给开发带来巨大的开销。