30秒学会 JavaScript 片段 · 2017年11月25日

30秒学会 JavaScript 片段 – hammingDistance

Calculates the Hamming distance between two values.

Use the XOR operator (^) to find the bit difference between the two numbers, convert to a binary string using toString(2).
Count and return the number of 1s in the string, using match(/1/g).

代码片段

const hammingDistance = (num1, num2) => ((num1 ^ num2).toString(2).match(/1/g) || '').length;

使用样例

hammingDistance(2, 3); // 1