国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

JS中的常見二進(jìn)制數(shù)據(jù)格式

這篇具有很好參考價(jià)值的文章主要介紹了JS中的常見二進(jìn)制數(shù)據(jù)格式。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

格式 描述 用途 示例
ArrayBuffer 固定長度的二進(jìn)制數(shù)據(jù)緩沖區(qū),不直接操作具體的數(shù)據(jù),而是通過類型數(shù)組或DataView對象來讀寫 用于存儲(chǔ)和處理大量的二進(jìn)制數(shù)據(jù),如文件、圖像等 let buffer = new ArrayBuffer(16);
TypedArray 基于ArrayBuffer對象的視圖,提供特定格式的讀寫接口 用于操作具有特定數(shù)據(jù)類型的二進(jìn)制數(shù)據(jù) let int32View = new Int32Array(buffer);
DataView 提供對ArrayBuffer的復(fù)雜和靈活讀寫操作,可以讀寫任意位置的任意類型的數(shù)據(jù) 當(dāng)需要精確控制二進(jìn)制數(shù)據(jù)的讀寫位置和格式時(shí)使用 let dataView = new DataView(buffer);
Blob 表示不可變的原始數(shù)據(jù),通常是二進(jìn)制數(shù)據(jù)或文本數(shù)據(jù) 用于處理文件、圖片等二進(jìn)制數(shù)據(jù),可以通過URL.createObjectURL()創(chuàng)建對象URL let blob = new Blob([arrayBuffer], {type: 'image/jpeg'});
File 繼承自Blob,表示用戶系統(tǒng)上的具體文件 用于處理用戶上傳的文件,可以獲取文件名、大小等信息 let file = new File([blob], 'filename.jpg', {type: 'image/jpeg'});
Uint8Array 8位無符號整數(shù)類型數(shù)組,用于存儲(chǔ)0到255之間的整數(shù) 用于處理8位圖像數(shù)據(jù)、字節(jié)流等 let uint8Array = new Uint8Array(buffer);
Uint16Array 16位無符號整數(shù)類型數(shù)組,用于存儲(chǔ)0到65535之間的整數(shù) 用于處理音頻數(shù)據(jù)、圖像數(shù)據(jù)等 let uint16Array = new Uint16Array(buffer);
Float32Array 32位浮點(diǎn)數(shù)類型數(shù)組,用于存儲(chǔ)浮點(diǎn)數(shù) 用于處理浮點(diǎn)數(shù)的二進(jìn)制數(shù)據(jù),如科學(xué)計(jì)算、物理模擬等 let float32Array = new Float32Array(buffer);

部分使用示例:
?文章來源地址http://www.zghlxwxcb.cn/news/detail-847603.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>二進(jìn)制格式轉(zhuǎn)換示例</title>
  </head>
  <body>
    <input type="file" id="fileInput" accept="*" />
    <button onclick="convertFileToBinaryFormats()">轉(zhuǎn)換文件為二進(jìn)制格式</button>
    <pre id="output"></pre>

    <script>
      function convertFileToBinaryFormats() {
        const fileInput = document.getElementById("fileInput");
        const file = fileInput.files[0];

        if (!file) {
          alert("未選擇文件");
          return;
        }

        let reader = new FileReader(); // 使用let而不是const

        reader.onload = function (event) {
          const arrayBuffer = event.target.result;

          // ArrayBuffer
          console.log("ArrayBuffer:", arrayBuffer);

          // TypedArray (例如 Uint8Array)
          const uint8Array = new Uint8Array(arrayBuffer);
          console.log("Uint8Array:", uint8Array);

          // DataView
          const dataView = new DataView(arrayBuffer);
          console.log("DataView:", dataView);

          // Blob
          const blob = new Blob([arrayBuffer], { type: file.type });
          console.log("Blob:", blob);

          // 顯示部分Uint8Array內(nèi)容作為示例
          const output = `文件類型: ${file.type}<br>`;
          output += `ArrayBuffer長度: ${arrayBuffer.byteLength} 字節(jié)<br>`;
          output += `Uint8Array前10個(gè)字節(jié): ${Array.from(uint8Array.slice(0, 10))
            .map((b) => b.toString(16).padStart(2, "0"))
            .join(" ")}<br>`;

          document.getElementById("output").textContent = output;
        };

        reader.readAsArrayBuffer(file);
      }
    </script>
  </body>
</html>

到了這里,關(guān)于JS中的常見二進(jìn)制數(shù)據(jù)格式的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • java數(shù)據(jù)結(jié)構(gòu)與算法刷題-----LeetCode1091. 二進(jìn)制矩陣中的最短路徑

    java數(shù)據(jù)結(jié)構(gòu)與算法刷題-----LeetCode1091. 二進(jìn)制矩陣中的最短路徑

    java數(shù)據(jù)結(jié)構(gòu)與算法刷題目錄(劍指Offer、LeetCode、ACM)-----主目錄-----持續(xù)更新(進(jìn)不去說明我沒寫完): https://blog.csdn.net/grd_java/article/details/123063846 雙分裂蛇:是求二維表中從起點(diǎn)到終點(diǎn)的經(jīng)典思路(也是求無權(quán)圖的最短路徑問題的經(jīng)典解法)。創(chuàng)建兩條分裂蛇,分別從起點(diǎn)和

    2024年04月26日
    瀏覽(97)
  • SQL server中:常見問題匯總(如:修改表時(shí)不允許修改表結(jié)構(gòu)、將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)等)

    SQL server中:常見問題匯總(如:修改表時(shí)不允許修改表結(jié)構(gòu)、將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)等)

    步驟 選擇菜單欄中的“工具”-“選項(xiàng)”,在選項(xiàng)對話框左欄中找到“設(shè)計(jì)器”,在設(shè)計(jì)器右邊取消勾選“阻止保存要求重新創(chuàng)建表的更改”即可。 圖例 注意 設(shè)計(jì)表時(shí),盡量一次性設(shè)計(jì)成功,避免使用alter修改表,修改起來有各種約束,不容易修改。 解決: 你設(shè)置的數(shù)據(jù)類型

    2024年02月03日
    瀏覽(22)
  • 【滲透測試之二進(jìn)制安全系列】格式化漏洞揭秘(一)

    相信學(xué)習(xí)過C語言的童鞋兒們,都有接觸過比較基礎(chǔ)的輸入輸出函數(shù)(例如,scanf和printf等),那么對于%s、%d、%f、%c、%x等 格式化符號 應(yīng)該并不會(huì)感到陌生。學(xué)習(xí)過匯編語言,并且有逆向工程基礎(chǔ)的童鞋兒們,應(yīng)該都對C語言翻譯成匯編語言代碼的大概格式會(huì)有所了解! 我們

    2024年02月04日
    瀏覽(18)
  • 【嵌入式燒錄/刷寫文件】-3.1-詳解二進(jìn)制Bin格式文件

    【嵌入式燒錄/刷寫文件】-3.1-詳解二進(jìn)制Bin格式文件

    目錄 1 什么是bin 2 bin文件的結(jié)構(gòu) 3 如何打開bin文件 3.1 使用Vector HexView工具打開 3.2 使用Notepad++工具打開 3.3 使用Binary Viewer工具打開 結(jié)尾 優(yōu)質(zhì)博文推薦閱讀(單擊下方鏈接,即可跳轉(zhuǎn)): 點(diǎn)擊返回「《Autosar從入門到精通-實(shí)戰(zhàn)篇》總目錄」 點(diǎn)擊返回「《Autosar_BSW高階配置》總

    2024年02月08日
    瀏覽(85)
  • SSM 前端使用AJAX方式,fromdata文件格式上傳二進(jìn)制流文件

    今天在上課的時(shí)候,遇到了一個(gè)比較坑的問題,有個(gè)學(xué)生拿來了她的代碼,讓我給她看看為什么傳值傳不過來。 首先,前端是這樣的: 后端是這樣的: 然后上傳文件的配置器是這樣的: 她遇到的第一個(gè)問題是,后端這里接受值的時(shí)候,接受到的id和文件都是null,然后再后續(xù)

    2024年02月10日
    瀏覽(111)
  • 關(guān)于二進(jìn)制的原碼、補(bǔ)碼和反碼,以及表示范圍、常見位運(yùn)算符和進(jìn)制轉(zhuǎn)換的理解與簡述

    關(guān)于二進(jìn)制的原碼、補(bǔ)碼和反碼,以及表示范圍、常見位運(yùn)算符和進(jìn)制轉(zhuǎn)換的理解與簡述

    【版權(quán)聲明】未經(jīng)博主同意,謝絕轉(zhuǎn)載!(請尊重原創(chuàng),博主保留追究權(quán)) https://www.cnblogs.com/cnb-yuchen/p/17963363 出自【進(jìn)步*于辰的博客】 參考筆記一,P3.13、P5.1;筆記三,P43.1/3、P44.1。 注:我暫且沒有整理關(guān)于二進(jìn)制、原碼、補(bǔ)碼和反碼等概念的理論,本文中的闡述都基于

    2024年02月02日
    瀏覽(26)
  • Qt中的 tableView 設(shè)置 二進(jìn)制 十六進(jìn)制 序號表頭

    Qt中的 tableView 設(shè)置 二進(jìn)制 十六進(jìn)制 序號表頭

    因?yàn)镼TableView的垂直表頭并不支持使用委托來自定義。 相反,可以通過將自定義的QWidget作為QHeaderView的標(biāo)簽來實(shí)現(xiàn)這一目標(biāo)。 代碼: 在這個(gè)示例中,自定義了BinaryHeaderView類,繼承自QHeaderView, 重寫了paintSection方法來繪制二進(jìn)制序列。然后,將這個(gè)自定義的垂直表頭應(yīng)用到了

    2024年04月27日
    瀏覽(33)
  • js使用xlsx生成二進(jìn)制文件用于上傳(不下載)

    業(yè)務(wù)中經(jīng)常會(huì)處理各種數(shù)據(jù),本文介紹了前端通過 xlsx 庫將數(shù)據(jù)轉(zhuǎn)換為 excel 文件用于上傳的實(shí)現(xiàn)。

    2024年02月13日
    瀏覽(91)
  • Windows環(huán)境下Node.js二進(jìn)制版安裝教程

    Windows環(huán)境下Node.js二進(jìn)制版安裝教程

    新版的 Node.js 已自帶 npm ,就在 Node.js 下載完成解壓后的文件內(nèi),的 node_modules 包中。 npm 的作用:是對 Node.js 依賴的包進(jìn)行管理,類似 maven 。 下載地址 https://nodejs.org/en 下載binary包 解壓后 NODE_PATH , node.exe 所在路徑。 添加 PATH CMD 命令行中用 npm -v 和 node -v 測試一下是否按照成

    2024年02月14日
    瀏覽(55)
  • 前端:JS:將圖片轉(zhuǎn)為二進(jìn)制與其他文本傳入后端

    在前端,可以將圖片轉(zhuǎn)換為二進(jìn)制數(shù)據(jù),并將其與其他文本字符串一起發(fā)送到后端。一種常見的方法是將所有數(shù)據(jù)組合為一個(gè) FormData 對象,然后通過 AJAX 或 Fetch API 將其發(fā)送給后端。以下是一個(gè)示例: 解釋 : 當(dāng)文件輸入框內(nèi)容發(fā)生變化時(shí),會(huì)觸發(fā) change 事件。然后,它會(huì)讀

    2024年04月26日
    瀏覽(33)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包