]> zoso.dev Git - buffer.git/commitdiff
add back Number.isNaN shim for IE
authorFeross Aboukhadijeh <feross@feross.org>
Wed, 5 Apr 2017 18:51:52 +0000 (11:51 -0700)
committerFeross Aboukhadijeh <feross@feross.org>
Wed, 5 Apr 2017 18:51:52 +0000 (11:51 -0700)
index.js

index 47d94500ae70e3222fc2069a7446f38890abff67..b62b110b3061f270be1c1c8c325b029e989cbdda 100644 (file)
--- a/index.js
+++ b/index.js
@@ -253,7 +253,7 @@ function fromObject (obj) {
 
   if (obj) {
     if (isArrayBufferView(obj) || 'length' in obj) {
-      if (typeof obj.length !== 'number' || Number.isNaN(obj.length)) {
+      if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {
         return createBuffer(0)
       }
       return fromArrayLike(obj)
@@ -630,7 +630,7 @@ function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {
     byteOffset = -0x80000000
   }
   byteOffset = +byteOffset  // Coerce to Number.
-  if (Number.isNaN(byteOffset)) {
+  if (numberIsNaN(byteOffset)) {
     // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer
     byteOffset = dir ? 0 : (buffer.length - 1)
   }
@@ -761,7 +761,7 @@ function hexWrite (buf, string, offset, length) {
   }
   for (var i = 0; i < length; ++i) {
     var parsed = parseInt(string.substr(i * 2, 2), 16)
-    if (Number.isNaN(parsed)) return i
+    if (numberIsNaN(parsed)) return i
     buf[offset + i] = parsed
   }
   return i
@@ -1700,3 +1700,7 @@ function blitBuffer (src, dst, offset, length) {
 function isArrayBufferView (obj) {
   return (typeof ArrayBuffer.isView === 'function') && ArrayBuffer.isView(obj)
 }
+
+function numberIsNaN (obj) {
+  return obj !== obj // eslint-disable-line no-self-compare
+}