code: function getNextIFDOffset(dataView, dirStart, bigEnd){
          //the first 2bytes means the number of directory entries contains in this IFD
          var entries = dataView.getUint16(dirStart, !bigEnd);
  
          // After last directory entry, there is a 4bytes of data,
          // it means an offset to next IFD.
          // If its value is '0x00000000', it means this is the last IFD and there is no linked IFD.
  
          return dataView.getUint32(dirStart + 2 + entries * 12, !bigEnd); // each entry is 12 bytes long
      }
docs: Given an IFD (Image File Directory) start offset
  returns an offset to next IFD or 0 if it's the last IFD.