Not sure if this is a spec bug but it seems to me that there is a discrepancy between Chrome/Firefox and the spec. Am I missing something?
Step 5 of 24.3.1.2 SetViewValue converts the value into an integer, which means that NaN is converted into 0. However in Chrome and Firefox DataView.prototype.setFloat64 called with value 0 doesn't have the same effect as called with value NaN:
var b = new ArrayBuffer(8);
var a = new Uint8Array(b);
var d = new DataView(b);
d.setFloat64(0, NaN);
a; // [ 127, 248, 0, 0, 0, 0, 0, 0 ]
d.setFloat64(0, 0)
a; // [ 0, 0, 0, 0, 0, 0, 0, 0 ]