国产av一二三区|日本不卡动作网站|黄色天天久久影片|99草成人免费在线视频|AV三级片成人电影在线|成年人aV不卡免费播放|日韩无码成人一级片视频|人人看人人玩开心色AV|人妻系列在线观看|亚洲av无码一区二区三区在线播放

網(wǎng)易首頁(yè) > 網(wǎng)易號(hào) > 正文 申請(qǐng)入駐

Webpack和JShaman相比有什么不同?

0
分享至

Webpack和JShaman相比有什么不同?

Webpack的功能是打包,可以將多個(gè)JS文件打包成一個(gè)JS文件。

JShaman專門用于對(duì)JS代碼混淆加密,目的是讓JavaScript代碼變的不可讀、混淆功能邏輯、加密代碼中的隱秘?cái)?shù)據(jù)或字符,是用于代碼保護(hù)的。

兩者是完全不同的。但是,因?yàn)閃ebpack打包生成的JS文件,看起來(lái)似乎也有一些混淆特征,因此常被一些人誤以為它也是混淆工具,事實(shí)上,它當(dāng)然不是。

下面用實(shí)例演示兩者差別:

本例中,使用兩個(gè)文件,example.js和mod.js。

Example.js文件代碼

var mod = require("./mod.js");
mod.fun();
console.log("done.");

Mod.js文件代碼

exports.fun = function (){
var name = "Tom"
var age = 100;
console.log(name + " is " + age + " years old.");

代碼邏輯非常簡(jiǎn)單,example.js調(diào)用mod.js中的函數(shù),運(yùn)行時(shí)會(huì)輸出兩行信息,如下圖所示。

接下來(lái),演示W(wǎng)ebpack打包效果和JShaman混淆效果。

Webpack打包

用于webpack打包的配置文件,webpack.config.js文件內(nèi)容如下。

const path = require('path');
module.exports = {
entry: './example.js',
output: {
path: path.resolve(__dirname, ''),
filename: 'bundle.js',
},

入口文件是example.js,打包目標(biāo)文件是bundle.js。在命令行中完成打包操作,如下圖所示。

此時(shí)生成了bundle.js文件,用node執(zhí)行也與之前運(yùn)行輸出相同,bundle.js文件內(nèi)容如下圖所示。

可以看出bundle.js中包含了之前example.js和mod.js中的代碼,webpack是將這兩文件合并成了一個(gè)bundle.js文件。

bundle.js文件代碼中能明顯的看到console.log("Tom is 100 years old.")和console.log("done.")語(yǔ)句,功能邏輯清晰。

JShaman混淆

如果使用JShaman對(duì)example.js和mod.js文件代進(jìn)行JavaScript代碼混淆。

Mod.js文件代碼會(huì)變成如下形式。

exports['\x66\x75\x6e']=function(){var _0xc2938d="2|3|4|0|1|5|6".split("|"),_0x6c3a8e=0;while(!![]){switch(+_0xc2938d[_0x6c3a8e++]){case 0:var _0xd5b0a;continue;case 1:var _0xadb4fb=function(s,h){return s^h;}(591416,591452);continue;case 2:var _0x74a25f=function(s,h){return s+h;}(135763^135765,747847^747855);continue;case 3:var _0x="moT"['\x73\x70\x6c\x69\x74']("")['\x72\x65\x76\x65\x72\x73\x65']()['\x6a\x6f\x69\x6e']("");continue;case 4:_0x74a25f=function(){return"_0xc3f35e912";}();continue;case 5:_0xd5b0a=function(){return"_0x28dbg8912";}();continue;case 6:console['\x6c\x6f\x67'](_0x+" si "['\x73\x70\x6c\x69\x74']("")['\x72\x65\x76\x65\x72\x73\x65']()['\x6a\x6f\x69\x6e']("")+_0xadb4fb+".dlo sraey "['\x73\x70\x6c\x69\x74']("")['\x72\x65\x76\x65\x72\x73\x65']()['\x6a\x6f\x69\x6e'](""));continue;}break;}};

Example.js代碼會(huì)變成如下形式。

var _0xeb79bb;var mod=require("sj.dom/."['\x73\x70\x6c\x69\x74']("")['\x72\x65\x76\x65\x72\x73\x65']()['\x6a\x6f\x69\x6e'](""));_0xeb79bb=function(){return"_0x4f92c9912";}();mod['\x66\x75\x6e']();console['\x6c\x6f\x67'](".enod"['\x73\x70\x6c\x69\x74']("")['\x72\x65\x76\x65\x72\x73\x65']()['\x6a\x6f\x69\x6e'](""));

webpack打包后能看到的console.log("Tom is 100 years old.")和console.log("done.")語(yǔ)句,JShaman混淆后不會(huì)出現(xiàn)的。

總結(jié)

Webpack用于打包文件,將多個(gè)JS文件變成一個(gè)。

JShaman用于混淆JavaScript代碼,使代碼不可讀。

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關(guān)推薦
熱點(diǎn)推薦
曾經(jīng)他們硬氣的拒絕了中國(guó),如今好懷念他們當(dāng)初桀驁不馴的樣子!

曾經(jīng)他們硬氣的拒絕了中國(guó),如今好懷念他們當(dāng)初桀驁不馴的樣子!

北緯的咖啡豆
2025-12-23 14:28:08
委內(nèi)瑞拉軍方集體叛變,古巴人血戰(zhàn)至死,世界變了但古巴依然站著

委內(nèi)瑞拉軍方集體叛變,古巴人血戰(zhàn)至死,世界變了但古巴依然站著

晚霧空青
2026-01-07 15:44:03
演員王挺:父母離婚,幫爸爸還掉千萬(wàn)巨債后,40歲終與家人和解

演員王挺:父母離婚,幫爸爸還掉千萬(wàn)巨債后,40歲終與家人和解

白面書誏
2026-01-08 00:21:05
西方軍事專家:不同于其他大國(guó),中國(guó)是全世界最完美的超級(jí)大國(guó)

西方軍事專家:不同于其他大國(guó),中國(guó)是全世界最完美的超級(jí)大國(guó)

荷蘭豆愛(ài)健康
2026-01-08 05:46:00
叛徒確定,取代馬杜羅后還能拿5000萬(wàn)?數(shù)月前就已通過(guò)美國(guó)面試

叛徒確定,取代馬杜羅后還能拿5000萬(wàn)?數(shù)月前就已通過(guò)美國(guó)面試

墜入二次元的海洋
2026-01-08 05:47:20
特朗普稱印度訂購(gòu)68架美制“阿帕奇”直升機(jī)被延遲5年 印媒:說(shuō)法不實(shí)

特朗普稱印度訂購(gòu)68架美制“阿帕奇”直升機(jī)被延遲5年 印媒:說(shuō)法不實(shí)

財(cái)聯(lián)社
2026-01-07 16:46:51
新一代小米SU7來(lái)了,更重要的是沒(méi)有“小字”

新一代小米SU7來(lái)了,更重要的是沒(méi)有“小字”

差評(píng)XPIN
2026-01-08 00:08:54
上海男籃又要破紀(jì)錄了?

上海男籃又要破紀(jì)錄了?

新民晚報(bào)
2026-01-08 10:10:34
回顧“91女神”琪琪:五官出眾,卻因天真讓自己“受傷”

回顧“91女神”琪琪:五官出眾,卻因天真讓自己“受傷”

就一點(diǎn)
2025-11-22 10:36:39
賴昌星發(fā)妻曾明娜現(xiàn)狀:逃亡10年后回國(guó),守著3000平老宅安靜養(yǎng)老

賴昌星發(fā)妻曾明娜現(xiàn)狀:逃亡10年后回國(guó),守著3000平老宅安靜養(yǎng)老

古書記史
2025-12-12 11:21:38
向太曝馬伊琍已再婚:當(dāng)年文章過(guò)不了心理那關(guān)

向太曝馬伊琍已再婚:當(dāng)年文章過(guò)不了心理那關(guān)

娛樂(lè)看阿敞
2025-12-12 15:50:00
燒光350億,又一家國(guó)產(chǎn)造車新勢(shì)力倒下,正式宣告破產(chǎn)

燒光350億,又一家國(guó)產(chǎn)造車新勢(shì)力倒下,正式宣告破產(chǎn)

詩(shī)意世界
2025-12-31 10:45:29
林強(qiáng)涉案989億被抓!生活奢華超過(guò)中東富豪,超5萬(wàn)百姓血本無(wú)歸

林強(qiáng)涉案989億被抓!生活奢華超過(guò)中東富豪,超5萬(wàn)百姓血本無(wú)歸

千言?shī)蕵?lè)記
2025-12-27 20:07:06
一人中542萬(wàn)大獎(jiǎng),目前尚未聯(lián)系,兌獎(jiǎng)期限不足12小時(shí)!

一人中542萬(wàn)大獎(jiǎng),目前尚未聯(lián)系,兌獎(jiǎng)期限不足12小時(shí)!

浙江之聲
2026-01-07 17:47:56
劉濤帶兒女吃烤肉喝紅酒!18歲紫嫣胖到140斤,17歲兒子又高又帥

劉濤帶兒女吃烤肉喝紅酒!18歲紫嫣胖到140斤,17歲兒子又高又帥

阿雹娛樂(lè)
2026-01-08 11:34:01
8國(guó)在白宮開(kāi)會(huì),討論廢掉中國(guó)王牌?關(guān)鍵時(shí)刻,印度作出重要決斷

8國(guó)在白宮開(kāi)會(huì),討論廢掉中國(guó)王牌?關(guān)鍵時(shí)刻,印度作出重要決斷

博覽歷史
2026-01-07 18:03:20
中國(guó)商務(wù)部一紙禁令,不用費(fèi)一兵一卒,讓日本嘗嘗去軍事化的滋味

中國(guó)商務(wù)部一紙禁令,不用費(fèi)一兵一卒,讓日本嘗嘗去軍事化的滋味

博覽歷史
2026-01-07 14:41:27
烏專家:中國(guó)“吸干”蘇聯(lián)遺產(chǎn),我們圖紙都沒(méi)看懂,他們?cè)斐?.0

烏專家:中國(guó)“吸干”蘇聯(lián)遺產(chǎn),我們圖紙都沒(méi)看懂,他們?cè)斐?.0

博覽歷史
2025-12-29 19:26:45
于鳳至有多美?于鳳至的真實(shí)樣貌,都看看吧,好多照片第一次見(jiàn)!

于鳳至有多美?于鳳至的真實(shí)樣貌,都看看吧,好多照片第一次見(jiàn)!

王発吃吃喝喝
2026-01-04 15:21:34
高中生扶老人被訛50萬(wàn),15年后老人孫子考上清華,在校門口跪下求饒

高中生扶老人被訛50萬(wàn),15年后老人孫子考上清華,在校門口跪下求饒

紅豆講堂
2025-07-14 17:21:43
2026-01-08 17:03:00
javascript知識(shí)園
javascript知識(shí)園
javascript編程知識(shí)分享,JS加密、JS混淆等等。
208文章數(shù) 422關(guān)注度
往期回顧 全部

科技要聞

智譜拿下“全球大模型第一股”,憑什么

頭條要聞

9歲女孩課堂寫試卷昏倒去世 家屬不忍尸檢稱"她怕疼"

頭條要聞

9歲女孩課堂寫試卷昏倒去世 家屬不忍尸檢稱"她怕疼"

體育要聞

約基奇倒下后,一位故人邪魅一笑

娛樂(lè)要聞

2026春節(jié)檔將有六部電影強(qiáng)勢(shì)上映

財(cái)經(jīng)要聞

微軟CTO韋青:未來(lái)人類會(huì)花錢"戒手機(jī)"

汽車要聞

從量變到"智"變 吉利在CES打出了五張牌

態(tài)度原創(chuàng)

數(shù)碼
親子
本地
藝術(shù)
公開(kāi)課

數(shù)碼要聞

曜越帶來(lái)75%配列無(wú)線機(jī)械鍵盤,可選復(fù)古象牙白配色

親子要聞

深圳一老師在幼兒園內(nèi)辦婚禮,全園孩子都來(lái)迎親吃席,

本地新聞

1986-2026,一通電話的時(shí)空旅程

藝術(shù)要聞

頤和園金光穿洞

公開(kāi)課

李玫瑾:為什么性格比能力更重要?

無(wú)障礙瀏覽 進(jìn)入關(guān)懷版