我试图在任何其他语言中执行一些简单易懂的东西,但不是javascript:从浮动中获取位数(反之亦然).
在C/C++中它会是这样的
float a = 3.1415; int b = *((int*)&a);
反之亦然
int a = 1000; float b = *((float*)&a);
在C#中,您可以使用BitConverter ... floatBits或类似的东西......即使在VB6中为了基督的缘故,您也可以将float32存入int32.我怎么能在javascript中转换和int和浮点数?
以下代码是我对相当通用的 javascript 哈希代码实现的尝试。我计划将此代码与哈希表实现(例如 jshashtable)结合使用,该哈希表实现使用 hashCode() (如果它是为键定义的)。我尝试严格遵守 java 的数字、字符串和数组的哈希码实现。
问题:
注意:我知道下面的代码可以利用其他库,例如下划线和 jquery,但我不希望在我的实现中使用任何第三方依赖。这并不是说我对哈希代码库不感兴趣,它们本身可能依赖于 jquery、下划线等。
/**
* Computes a hash code for an object based on a given subset of its fields
* @param obj any type
* @param keys an array of strings representing some subset of the keys in obj or undefined
* @returns {Number} a java-like hash code for obj based on the hash codes of a subset of its fields …Run Code Online (Sandbox Code Playgroud)