movii
7/13/2017 - 7:47 AM

笔记:使用 JavaScript 识别文件 MIME TYPE - 后续的一些问题 4. 原始 demo 中对二进制内容的可视化

笔记:使用 JavaScript 识别文件 MIME TYPE - 后续的一些问题 4. 原始 demo 中对二进制内容的可视化

//  原始 demo 中对二进制内容的可视化
let scale = !checkbox.checked ? 2:16 
// format style purpose
// 8 => binary: 1 => 00000001 || 2 => hex: 1 => 01   
  , padValue = scale === 2 ? 8 : 2
  , view = new DataView(af)
  , result = ''
  , offset = (8/8)

// if value has been cache in store, use store value
if (store[scale]){
  output.innerHTML = store[scale];
  return
}

for (let i = 0; i < view.byteLength; i += offset) {
  let value = view.getUint8(i).toString(scale === 2 ? 2 : 16)
  result += pad(value, padValue) + ' ';
  // make 4 byte per line
  result += ((i-3) % 4 === 0) ? '<br/>' : '';
}