久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

        手機(jī)站
        千鋒教育

        千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

        千鋒教育

        掃一掃進(jìn)入千鋒手機(jī)站

        領(lǐng)取全套視頻
        千鋒教育

        關(guān)注千鋒學(xué)習(xí)站小程序
        隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

        當(dāng)前位置:首頁  >  技術(shù)干貨  > js-xlsx用法介紹

        js-xlsx用法介紹

        來源:千鋒教育
        發(fā)布人:xqq
        時(shí)間: 2023-11-21 15:06:41 1700550401

        一、js-xlsx是什么

        js-xlsx是一款純JavaScript實(shí)現(xiàn)的解析和生成Excel文件的工具,可以輕松地在瀏覽器中讀取、修改和生成Excel文件。

        js-xlsx支持xlsx、xlsb、xlsm、xls、xml和csv文件格式,同時(shí)還支持解析和輸出Excel文件中的多個(gè)工作簿和工作表。

        其中,解析Excel文件使用的工具為SheetJS/js-xlsx中的XLSX工具,生成Excel文件使用的工具為SheetJS/js-xlsx中的JSZip工具。

        二、js-xlsx的安裝和引用

        通過npm安裝:

        npm install xlsx
        

        或者直接在頁面中引入:

        
        

        使用Node.js引入:

        const XLSX = require('xlsx');
        

        三、Excel文件的解析和讀取

        使用js-xlsx可以輕松地讀取Excel文件。代碼示例:

        const XLSX = require('xlsx');
        const workbook = XLSX.readFile('example.xlsx');
        const sheetNames = workbook.SheetNames;
        const worksheet = workbook.Sheets[sheetNames[0]];
        console.log(XLSX.utils.sheet_to_json(worksheet));
        

        上述代碼中,首先通過XLSX.readFile函數(shù)讀取本地的example.xlsx文件。然后,使用workbook.SheetNames獲取工作簿的名稱,在這里我們?nèi)〉谝粋€(gè)工作簿的名稱。最后,通過workbook.Sheets[sheetNames[0]]獲取該工作簿的工作表并將其轉(zhuǎn)化為Json格式輸出。

        四、Excel文件的生成和導(dǎo)出

        使用js-xlsx可以輕松地生成Excel文件并進(jìn)行導(dǎo)出。代碼示例:

        const XLSX = require('xlsx');
        const data = [[1, 2, 3], [4, 5, 6]];
        const worksheet = XLSX.utils.aoa_to_sheet(data);
        const workbook = XLSX.utils.book_new();
        XLSX.utils.book_append_sheet(workbook, worksheet, "Sheet1");
        XLSX.writeFile(workbook, "example.xlsx");
        

        上述代碼中,首先定義了一個(gè)名為data的二維數(shù)組。然后通過XLSX.utils.aoa_to_sheet函數(shù)將該數(shù)組轉(zhuǎn)換為工作表。之后使用XLSX.utils.book_new()創(chuàng)建一個(gè)新的工作簿,并將該工作表添加到該工作簿中。最后,使用XLSX.writeFile函數(shù)將該工作簿導(dǎo)出為名為example.xlsx的文件。

        五、Excel文件的處理和篩選

        使用js-xlsx可以輕松地處理和篩選Excel文件。代碼示例:

        const XLSX = require('xlsx');
        const workbook = XLSX.readFile('example.xlsx');
        const sheetNames = workbook.SheetNames;
        const worksheet = workbook.Sheets[sheetNames[0]];
        const data = XLSX.utils.sheet_to_json(worksheet);
        
        const newData = data.filter(item => item[0] > 1);
        const newWorksheet = XLSX.utils.json_to_sheet(newData);
        const newWorkbook = XLSX.utils.book_new();
        XLSX.utils.book_append_sheet(newWorkbook, newWorksheet, "Sheet1");
        XLSX.writeFile(newWorkbook, "new.xlsx");
        

        上述代碼中,首先通過XLSX.readFile函數(shù)讀取本地的example.xlsx文件。然后使用XLSX.utils.sheet_to_json函數(shù)將工作表轉(zhuǎn)換為Json格式,并賦值給data變量。接著,通過篩選技巧(在本例中是選擇第一列的數(shù)值大于1的數(shù)據(jù))過濾掉數(shù)據(jù)并輸出為newData。最后,通過將newData數(shù)組轉(zhuǎn)換為新的工作表,新建一個(gè)工作簿newWorkbook并將該工作表添加到該工作簿中。最后使用XLSX.writeFile函數(shù)將該工作簿導(dǎo)出為名為new.xlsx的文件。

        六、Excel文件的格式化和修飾

        使用js-xlsx可以輕松地對(duì)Excel文件進(jìn)行格式化和修飾。代碼示例:

        const XLSX = require('xlsx');
        const workbook = XLSX.readFile('example.xlsx');
        const sheetNames = workbook.SheetNames;
        const worksheet = workbook.Sheets[sheetNames[0]];
        const data = XLSX.utils.sheet_to_json(worksheet);
        
        const newHeader = ['列1', '列2', '列3'];
        const newWorksheet = XLSX.utils.json_to_sheet(data, {header: newHeader, skipHeader:true, cellDates:true});
        XLSX.utils.format_cell(newWorksheet.A1, {font:{bold: true}});
        XLSX.utils.format_cell(newWorksheet.B1, {font:{italic: true}});
        
        const newWorkbook = XLSX.utils.book_new();
        XLSX.utils.book_append_sheet(newWorkbook, newWorksheet, "Sheet1");
        XLSX.writeFile(newWorkbook, "new.xlsx");
        

        上述代碼中,首先通過XLSX.readFile函數(shù)讀取本地的example.xlsx文件。然后使用XLSX.utils.sheet_to_json函數(shù)將工作表轉(zhuǎn)換為Json格式,并賦值給data變量。接著,定義了一個(gè)名為newHeader的新頭部數(shù)組。用它代替data數(shù)組中的原始頭部。經(jīng)過skipHeader:true的設(shè)置,新工作表中不會(huì)出現(xiàn) “列1”,“列2”,“列3”等過濾掉的數(shù)據(jù)。設(shè)置cellDates:true,將任意形式的日期格式轉(zhuǎn)化為JS日期對(duì)象。接下來通過XLSX.utils.format_cell函數(shù)對(duì)新工作簿中單元格進(jìn)行格式化,給A1單元格加粗字體,給B1單元格添加斜體字體。最后,通過將newData數(shù)組轉(zhuǎn)換為新的工作表,新建一個(gè)工作簿newWorkbook并將該工作表添加到該工作簿中。最后使用XLSX.writeFile函數(shù)將該工作簿導(dǎo)出為名為new.xlsx的文件。

        tags: js-xlsx
        聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
        10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
        請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
        免費(fèi)領(lǐng)取
        今日已有369人領(lǐng)取成功
        劉同學(xué) 138****2860 剛剛成功領(lǐng)取
        王同學(xué) 131****2015 剛剛成功領(lǐng)取
        張同學(xué) 133****4652 剛剛成功領(lǐng)取
        李同學(xué) 135****8607 剛剛成功領(lǐng)取
        楊同學(xué) 132****5667 剛剛成功領(lǐng)取
        岳同學(xué) 134****6652 剛剛成功領(lǐng)取
        梁同學(xué) 157****2950 剛剛成功領(lǐng)取
        劉同學(xué) 189****1015 剛剛成功領(lǐng)取
        張同學(xué) 155****4678 剛剛成功領(lǐng)取
        鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
        董同學(xué) 138****2867 剛剛成功領(lǐng)取
        周同學(xué) 136****3602 剛剛成功領(lǐng)取
        相關(guān)推薦HOT
        set+e在編程中的應(yīng)用

        一、什么是set+eSet+e是一種在編程中廣泛應(yīng)用的數(shù)據(jù)結(jié)構(gòu),也被稱為集合。簡(jiǎn)單來說,集合就是一組互不相同的元素。在編程中,Set+e通常用于存儲(chǔ)...詳情>>

        2023-11-21 17:27:06
        實(shí)卡接碼短信平臺(tái)及其應(yīng)用

        一、平臺(tái)介紹實(shí)卡接碼短信平臺(tái)是一種可以自動(dòng)處理短信驗(yàn)證碼的平臺(tái)。該平臺(tái)主要由短信接口、卡池管理、卡池調(diào)度、號(hào)碼顯匿、號(hào)碼推送等模塊組成...詳情>>

        2023-11-21 16:43:54
        Nginx日志格式詳解

        一、Nginx日志格式Nginx是一款高性能的HTTP和反向代理服務(wù)器,它采用默認(rèn)的日志格式記錄所有請(qǐng)求和響應(yīng)。Nginx日志格式由以下幾個(gè)部分組成:log...詳情>>

        2023-11-21 16:15:06
        銀行卡號(hào)正則表達(dá)式詳解

        一、銀行卡號(hào)正則校驗(yàn)銀行卡號(hào)是我們?nèi)粘I钪薪?jīng)常接觸到的一個(gè)數(shù)字串,如何驗(yàn)證銀行卡號(hào)的正確性呢?通過正則表達(dá)式來實(shí)現(xiàn)正則校驗(yàn)是最直接有...詳情>>

        2023-11-21 16:04:18
        Swift數(shù)組截取詳解

        一、基本概念1、Swift數(shù)組//定義一個(gè)包含整型數(shù)據(jù)的數(shù)組var arr: Array = [120, 130, 140, 150, 160]2、ArraySlice數(shù)組片段A詳情>>

        2023-11-21 16:00:41
        门源| 吐鲁番市| 松江区| 阿巴嘎旗| 邢台县| 醴陵市| 钟祥市| 泰和县| 内丘县| 新巴尔虎右旗| 屯门区| 登封市| 镇赉县| 福清市| 徐汇区| 吉木乃县| 娄底市| 微山县| 垣曲县| 涟水县| 新建县| 平武县| 肇源县| 克东县| 射阳县| 饶河县| 迁安市| 如皋市| 盘山县| 齐齐哈尔市| 朝阳市| 华容县| 来宾市| 六枝特区| 阳高县| 朝阳市| 沭阳县| 卫辉市| 尼勒克县| 资阳市| 房产|