I'm trying to get my Javascript code 100% JSLint clean.
I've got some JS code that I've lifted from elsewhere to create a UUID. That code has the following line:
s[16] = hexDigits.substr((s[16] & 0x3) | 0x8, 1);
This line incites JSLint to generate two error messages:
1) Unexpected use of '&'
2) Unexpected use of '|'
I don't understand why -- I'd appreciate counsel regarding how to recode to eliminate the error message.
The reason "why" is that actual bitwise operations are exceedingly rare in JS, and those operators appearing in JS code almost always are a typo for the boolean versions (&&
, ||
). That's why JSLint cares. This is a legit use of bitwise ops though. I believe you can silence the warning with the bitwise
flag:
/*jslint bitwise: true */
Did you give it the bitwise
option? That option warns on all uses of bitwise operations, as they tend to be inefficient in Javascript (the native floats need to be converted to ints for the bitwise operation, and then converted back)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With