主頁 > 企業開發 > Cheat Engine CE官方教程 [漢化]

Cheat Engine CE官方教程 [漢化]

2022-07-18 08:01:34 企業開發

CE修改器官方教程漢化版,區別于前款教程,官方教程中使用的是Tutorial64位程式,如下是經過翻譯后的官方檔案,

第一步:歡迎

當教程啟動時,您應該會看到類似的東西,您只需在閱讀幫助文本后單擊“下一步”按鈕即可,

在后面的步驟中保存密碼,以防崩潰(從注入中)并在以后重新啟動,

運用CE如何附加到行程

  • 1.打開要附加到的行程/游戲(如果尚未打開),
  • 2.打開作弊引擎(如果尚未打開),
  • 3.單擊作弊引擎表單工具列中的計算機圖示,如果作弊引擎剛剛打開,它應該會閃爍,或者在作弊引擎主表單選單上選擇行程,

4.從串列中選擇行程,

5.單擊打開按鈕或雙擊該程序,您應該會在表單頂部看到行程名稱,您現在已附加到該行程,

第二步:精確值掃描

對于步驟2,您將看到類似這樣的東西,

我們需要找到的是健康,這里是一個整數,

因此,設定記憶體掃描程式以查找整數,然后進行精確值掃描,然后將該值設定為當前運行狀況值,大多數整數將存盤在4位元組變數中,因此讓我們從那里開始,

注意:整數可以存盤在 1 位元組變數(位元組)、2 位元組變數(int16/短)、4 位元組變數 (int32/int) 或 8 位元組變數 (int64/long) 中,

準備就緒后,單擊第一個掃描按鈕

您應該在找到的地址串列中看到一個地址串列,如下所示,

現在點擊點擊我按鈕,然后重新輸入當前值,然后單擊下一次掃描按鈕

請注意串列中的紅色值,這表示該值已更改,

單擊下一次掃描后,您可能需要繼續單擊擊中我,然后重新掃描,告訴找到的地址串列足夠小,可以使用,

只需雙擊找到串列中的地址,即可將其添加到作弊表中,然后更改值并凍結地址,雙擊地址串列中的值進行編輯,通過單擊啟用碼/凍結框將其凍結,

現在應該啟用下一個按鈕,單擊它以轉到下一步,如果下一個按鈕尚未啟用,請再次單擊點擊我按鈕,

第三步:未知的初始值

當您開始步驟 3 時,您應該會看到表單如下所示,

就像幫助文本所說的那樣,請確保在開始新掃描之前單擊新掃描按鈕,

這將清除找到的結果以開始掃描新值,

在這里,我建議繼續單擊點擊我按鈕,只是為了查看值是如何減小的,以幫助確定要掃描的值型別,

請注意,該值減小了一個整數,即非小數,

因此,我將掃描儀設定為4個位元組和未知的初始值,然后單擊第一個掃描按鈕

現在點擊點擊我按鈕,然后將掃描型別設定為減小值,然后單擊嵌套掃描按鈕

請注意找到的地址數量,對于當今的大多數游戲來說,這有點小,對于大多數游戲來說,找到的結果很容易達到數百萬,

現在,只需使用點擊我按鈕繼續減小該值,然后掃描減小的值,直到找到的結果足夠小,可以使用,

現在我們只需選擇一個地址并更改值以查看它是否具有所需的效果,這就是它的作業原理,

在這里,我建議您在更改值(或只是Ctrl + C)之前始終注意這些值,以便在它們不是正確的值時將其設定回去,以防止在游戲中執行此操作時更改一堆未知地址并損壞保存檔案,

一旦您將值設定為 5000,下一步按鈕應立即變為啟用狀態,更改值并單擊點擊我按鈕后,進度條應填充,但這不是必需的,

現在應該啟用下一個按鈕,單擊它以轉到下一步,如果下一個按鈕尚未啟用,請再次單擊點擊我按鈕,

第四步:浮點數

當您開始步驟 4 時,您應該會看到表單如下所示,

因此,請單擊新建掃描按鈕,然后為掃描儀設定一個浮點數精確值,輸入當前運行狀況值,設定時,單擊第一個掃描按鈕,

因此,只需像以前一樣掃描以查找健康地址,然后將其添加到地址串列中,

現在再次單擊新的掃描按鈕,然后將掃描儀設定為雙精度值,輸入當前彈藥值,設定時,單擊第一個掃描按鈕,

因此,只需像以前一樣掃描以查找彈藥地址,然后將其添加到地址串列中即可,

現在將值更改為5000,然后下一步按鈕應變為啟用狀態,然后單擊下一步按鈕以繼續執行下一步,

第五步:代碼查找器

當您開始步驟 5 時,您應該看到表單如下所示,

因此,首先找到該值,然后將其添加到地址串列中,此時繼續保存表和密碼,以防除錯器設定不正確,

在地址串列中擁有地址后,右鍵單擊它,然后選擇找出訪問此地址的內容,

作弊引擎將提示您有關附加除錯器的資訊,只需單擊按鈕即可,

然后將打開一個除錯器表單,現在單擊更改值按鈕,您應該獲得顯示在除錯器表單中的代碼,

我們想要的是一個書面指令,因此,我們將尋找一些類似于以下內容之一的東西:

mov [**],**
add [**],**
sub [**],**
*** [**],**

選擇寫入指令的代碼行,可以單擊顯示拆裝器按鈕以查看記憶體中的代碼,然后單擊替換按鈕,最后不要忘記單擊停止按鈕,

替換按鈕會將該行代碼替換為NOP,作弊引擎將提示您輸入它將添加到高級選項串列中的條目的名稱,

輸入名稱,然后單擊確定按鈕,

現在,單擊教程中的更改值按鈕,下一步按鈕應變為啟用狀態,然后單擊下一步按鈕以前進到下一步,

當高級選項串列中的條目被替換時,它們將顯示為紅色文本,

可以通過單擊作弊引擎主表單左下角狀態欄中的高級選項按鈕來查看高級選項串列,

要還原串列中某個條目的原始代碼,請右鍵單擊該條目,然后選擇使用原始代碼還原

請注意,恢復后文本為黑色,

第六步:指標

當您開始步驟 6 時,您應該看到表單如下所示,

因此,首先找到該值,然后將其添加到地址串列中,

在地址串列中擁有地址后,右鍵單擊它,然后選擇找出訪問此地址的內容,

然后單擊更改值按鈕,讓行程訪問該地址,

選擇代碼以查找指標的基址時,請嘗試選擇不寫入與基址相同的暫存器的指令,

在這里,我們對方括號[]之間的值感興趣,因此這里我們需要RDX的值,

這里的偏移量是0,如果指令有這樣的東西:

mov [rdx+12C],eax

然后偏移量將為12C(0x12C),請注意,這是十六進制,

現在將掃描儀設定為8個位元組精確值,選中十六進制復選框,然后獲取找到的值并將其作為要掃描的值,

準備就緒后,單擊第一個掃描按鈕,

在找到的地址串列中查找帶有綠色文本的地址,這些是靜態地址,

將一個添加到作弊表,雙擊已添加到地址串列的記憶體記錄的地址,復制該地址,然后選中指標復選框,然后將該地址粘貼到指標基址中,

所以我的指標看起來像["Tutorial-x86_64.exe"+XXXXXX]+0這樣,

設定指標時單擊確定按鈕,

現在將值凍結5000并單擊更改指標按鈕,下一個按鈕應該變為啟用狀態,

如果下一個按鈕未啟用,則從找到的串列中選擇另一個地址,查找更改其值的綠色地址,并將其設定為與上一個地址一樣,并查看它是否指向正確的值,如果是這樣,請更改值凍結并單擊更改指標按鈕,

單擊下一步按鈕前進到下一步,

第七步:代碼注入

當您開始步驟 7 時,您應該會看到表單如下所示,

在這里,我們將遵循與步驟 5 相同的程序,但不是單擊替換,請單擊顯示反匯編器按鈕,

這將在指令的地址打開反匯編器視圖表單,

選中該指令后,按 Crtl+A 打開自動匯編程式表單,

在自動組裝器表單選單中,選擇模板,然后選擇完全注入

這將生成一些腳本來啟動,

現在,我們需要添加一些將值增加 2 的代碼,然后洗掉減小該值的原始代碼,

為了增加價值,我們可以使用INC或ADD

所以讓我們嘗試這樣的事情,

...
newmem:
  add dword ptr [rsi+780],2

code:
  //sub dword ptr [rsi+00000780],01
  jmp return

address:
  jmp newmem
  nop
  nop
return:
...

現在將腳本添加到作弊表,然后啟用腳本并單擊“點擊我”按鈕,

這應該啟用下一步按鈕,因此單擊下一步按鈕轉到下一步,

第八步:多級指標

當您開始步驟 8 時,您應該會看到表單如下所示,

手動迭代

在這里,我們將遵循與步驟6相同的步驟,除了我們將看到哪些內容訪問了我們找到的基址,并且我們將繼續重復此操作,直到找到靜態基址,

這是我的第一個除錯器輸出,

10002D8D1 - B9 A00F0000 - mov ecx,00000FA0
10002D8D6 - E8 3522FEFF - call Tutorial-x86_64.exe+XXXXXX
10002D8DB - 89 46 18  - mov [rsi+18],eax  <<<<<<
10002D8DE - 89 C2  - mov edx,eax
10002D8E0 - 48 8D 4D F8  - lea rcx,[rbp-08]

RAX=00000000000007F7
RBX=000000000125CD60
RCX=0000000000000FA0
RDX=00000000828087F3
RSI=0000000001287960  <<<<<<
RDI=0000000100258308
RSP=000000000102F070
RBP=000000000102F0B0
RIP=000000010002D8DE
R8=0000000100161BA0
R9=00000000008E06A0
R10=0000000000000002
R11=0000000000000206
R12=00000000012607C0
R13=0000000100161BA0
R14=0000000100258300
R15=0000000100257A18

我確實在基址的第一次掃描中發現了一個靜態基數,但我記得這是一個虛假的基數,所以這里我們想要的是一個process.exe+offset形式的基址,你可以嘗試其他看起來像module.dll+offset的基址,但我想說的是,在這里它們將被證明是錯誤的指標,是的,大多數較新的游戲都會有許多錯誤的值和指標,

除錯器從地址保持輸出:0000000001287960

10002D88B - E8 90961200 - call Tutorial-x86_64.exe+XXXXXX
10002D890 - E9 65000000 - jmp Tutorial-x86_64.exe+XXXXXX
10002D895 - 48 83 3E 00 - cmp qword ptr [rsi],00  <<<<<<
10002D899 - 74 5F - je Tutorial-x86_64.exe+XXXXXX
10002D89B - 48 8B 36  - mov rsi,[rsi]

RAX=0000000000013117
RBX=000000000125CD60
RCX=000000000125CD60
RDX=0000000000003CE3
RSI=0000000002D6D540  <<<<<<
RDI=0000000100258308
RSP=000000000102F070
RBP=000000000102F0B0
RIP=000000010002D899
R8=0000000100161BA0
R9=00000000008E06A0
R10=0000000000000002
R11=0000000000000206
R12=00000000012607C0
R13=0000000100161BA0
R14=0000000100258300
R15=0000000100257A18

除錯器輸出的地址保持:0000000002D6D540

10002D845 - E8 D6961200 - call Tutorial-x86_64.exe+XXXXXX
10002D84A - E9 AB000000 - jmp Tutorial-x86_64.exe+XXXXXX
10002D84F - 48 83 7E 18 00 - cmp qword ptr [rsi+18],00  <<<<<<
10002D854 - 0F84 A0000000 - je Tutorial-x86_64.exe+XXXXXX
10002D85A - 48 8B 76 18  - mov rsi,[rsi+18]

RAX=00000000000166D2
RBX=000000000125CD60
RCX=000000000125CD60
RDX=000000000000302E
RSI=0000000002D6CE40  <<<<<<
RDI=0000000100258308
RSP=000000000102F070
RBP=000000000102F0B0
RIP=000000010002D854
R8=0000000100161BA0
R9=00000000008E06A0
R10=0000000000000002
R11=0000000000000206
R12=00000000012607C0
R13=0000000100161BA0
R14=0000000100258300
R15=0000000100257A18

除錯器輸出的地址保持:0000000002D6CE40

10002D800 - E8 1B971200 - call Tutorial-x86_64.exe+XXXXXX
10002D805 - E9 F0000000 - jmp Tutorial-x86_64.exe+XXXXXX
10002D80A - 48 83 7E 10 00 - cmp qword ptr [rsi+10],00  <<<<<<
10002D80F - 0F84 E5000000 - je Tutorial-x86_64.exe+XXXXXX
10002D815 - 48 8B 76 10  - mov rsi,[rsi+10]

RAX=000000000000B567
RBX=000000000125CD60
RCX=000000000125CD60
RDX=00000000000050A1
RSI=000000000123F1C0  <<<<<<
RDI=0000000100258308
RSP=000000000102F070
RBP=000000000102F0B0
RIP=000000010002D80F
R8=0000000100161BA0
R9=00000000008E06A0
R10=0000000000000002
R11=0000000000000206
R12=00000000012607C0
R13=0000000100161BA0
R14=0000000100258300
R15=0000000100257A18

現在我們掃描該基址000000000123F1C0,您應該找到一個靜態地址,但在實際游戲中,您將繼續前進,直到找到靜態基址,

以該靜態地址為基址,我的指標將如``[[[["Tutorial-x86_64.exe"+XXXXXX]+10]+18]+0]+18`所示,

指標掃描可以通過首先找到所需值的地址,保存生成的指標映射,重新啟動游戲,再次搜索地址,保存另一個指標映射,然后比較兩者來快速解決此問題,

找到指標后,將其凍結在 5000,然后單擊更改指標按鈕,如果您找到了正確的底座,則下一步按鈕應在大約2秒后啟用,因此,單擊下一步按鈕轉到下一步,

第九步:共享代碼

當您開始步驟 9 時,您應該會看到表單如下所示,

因此,就像幫助文本所說的那樣,解決方案遠遠不止一種,

首先,我們需要找到其中一個地址并將其添加到表中,

如果您在查找地址時遇到問題,請記住嘗試不同的值型別,并且不要忘記開始新的掃描,

然后,就像在步驟7中一樣,我們想要查看訪問地址的內容,以找到寫入參與者運行狀況的函式,

如果您想嘗試其他方式,請繼續保存密碼,這是本教程的最后一步,

因此,在這里,最好了解我們實際上在尋找什么來區分盟友和戰斗人員,

當撰寫游戲或引擎時,演員和玩家可能會這樣撰寫,

//// Actor, base for all actors
class Actor(object){
   string Name = 'Actor';
   Coord Coords = new Coord(0, 0, 0);
   float Health = 100.0;
   ...
}
//// Player
class Player(Actor){ //// Player inherits form Actor
   string Name = 'Player';
   int Team = 1;
   ...
}

團隊本身可以是一個結構,比如說,如果它被宣告為一個物件類,比如Coords變數,我們希望尋找一個指向參與者團隊結構的指標,

因此,我們可以做到這一點的一種方法是在玩家結構中找到團隊ID或團隊結構,

在球員結構中查找球隊ID

找到減少生命值的功能后,右鍵單擊反匯編器視圖表單中的指令,然后選擇找出此指令訪問的地址,

然后單擊所有 4 個值的攻擊按鈕,除錯器串列中應具有所有 4 個地址,

因此,請繼續將它們添加到地址串列中,

然后,讓我們打開剖析資料結構表單,

你會得到一些彈出視窗,在想到它們之后,你應該看到這樣的表單,請注意,我必須擴展表單的寬度才能移動列,

現在在我的偏移量上,0x10被猜測為一個指標,在64位行程中寬度為8位元組,我看到0x10的指標的值看起來真的不像指標,

因此,我必須將其切換到4位元組,并添加一個新的元素集,其偏移量為具有4位元組值型別的0x14,這通常是它的作業方式,

所以在這里我們可以看到團隊變數在結構的偏移0x14,

現在我們需要向腳本添加一些注入代碼,然后添加一些代碼來檢查結構的團隊變數,以確定哪些參與者是盟友,哪些是戰斗員,

所以我們想要一些這樣的,

因此,啟用此腳本后,當游戲寫入演員健康時,以下是跳轉到鉤子代碼后將發生的事情:

  • 1.保存(PUSH)RFLAGS暫存器,不是完全需要,但在比較時仍然是一個好習慣,
  • 2.檢查演員是否在團隊 1 中,如果 actor 在團隊 1 中,則我們以浮點格式將新值設定為 5000,
  • 3.檢查演員是否在團隊 2 中,如果 actor 在團隊 2 中,則我們將新值設定為 0,采用十六進制格式,(浮點數 0 == 整型 0 == 十六進制 0)
  • 4.恢復(POP)RFLAGS暫存器,如果暫存器是PUSHed的,這是完全需要的,

啟用此腳本后,單擊重新啟動游戲并自動播放按鈕,然后您應該看到表單更改并如下所示,

因此,單擊下一步按鈕以完成本教程,然后,您應該會看到一個表單,告訴您已完成本教程,

在暫存器中發現差異

找到減少生命值的功能后,

右鍵單擊反匯編器視圖表單中的指令,然后選擇找出此指令訪問的地址,

然后單擊所有 4 個值的攻擊按鈕,

除錯器串列中應具有所有 4 個地址,

現在讓我們看看登記冊,看看我們是否能找到盟友和戰斗人員的差異,

單獨選擇每個地址,然后按 Ctrl+R

排串列單以使其更易于比較,

因此,在這里我們可以看到戰斗人員的RSI為1,

所以像這樣的腳本應該可以作業,

因此,啟用此腳本后,當游戲寫入演員健康時,以下是跳轉到鉤子代碼后將發生的事情:

  • 1.保存(PUSH)RFLAGS暫存器,不是完全需要,但在比較時仍然是一個好習慣,

  • 2.檢查 RSI 暫存器是否為

    • 1,如果 RSI 暫存器為 則我們將新值設定為十六進制格式的 0,(浮點數 0 == 整型 0 == 十六進制 0)
    • 2,如果 RSI 暫存器不是 1,那么我們假設 actor 是盟友,因此我們以浮點格式將新值設定為 5000,
  • 3.恢復(POP)RFLAGS暫存器,如果暫存器是PUSHed的,這是完全需要的,

啟用此腳本后,單擊重新啟動游戲并自動播放按鈕,然后您應該看到表單更改并如下所示,

因此,單擊下一步按鈕以完成本教程,

然后,您應該會看到一個表單,告訴您已完成本教程,

文章出處:https://www.cnblogs.com/LyShark/p/16486244.html
著作權宣告:本博客文章與代碼均為學習時整理的筆記,文章 [均為原創] 作品,轉載請 [添加出處] ,您添加出處是我創作的動力!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/499535.html

標籤:訊息安全

上一篇:微信小程式使用echarts/資料重繪重新渲染/圖層遮擋問題

下一篇:Cheat Engine CE官方教程 [漢化]

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • IEEE1588PTP在數字化變電站時鐘同步方面的應用

    IEEE1588ptp在數字化變電站時鐘同步方面的應用 京準電子科技官微——ahjzsz 一、電力系統時間同步基本概況 隨著對IEC 61850標準研究的不斷深入,國內外學者提出基于IEC61850通信標準體系建設數字化變電站的發展思路。數字化變電站與常規變電站的顯著區別在于程序層傳統的電流/電壓互 ......

    uj5u.com 2020-09-10 03:51:52 more
  • HTTP request smuggling CL.TE

    CL.TE 簡介 前端通過Content-Length處理請求,通過反向代理或者負載均衡將請求轉發到后端,后端Transfer-Encoding優先級較高,以TE處理請求造成安全問題。 檢測 發送如下資料包 POST / HTTP/1.1 Host: ac391f7e1e9af821806e890 ......

    uj5u.com 2020-09-10 03:52:11 more
  • 網路滲透資料大全單——漏洞庫篇

    網路滲透資料大全單——漏洞庫篇漏洞庫 NVD ——美國國家漏洞庫 →http://nvd.nist.gov/。 CERT ——美國國家應急回應中心 →https://www.us-cert.gov/ OSVDB ——開源漏洞庫 →http://osvdb.org Bugtraq ——賽門鐵克 →ht ......

    uj5u.com 2020-09-10 03:52:15 more
  • 京準講述NTP時鐘服務器應用及原理

    京準講述NTP時鐘服務器應用及原理京準講述NTP時鐘服務器應用及原理 安徽京準電子科技官微——ahjzsz 北斗授時原理 授時是指接識訓通過某種方式獲得本地時間與北斗標準時間的鐘差,然后調整本地時鐘使時差控制在一定的精度范圍內。 衛星導航系統通常由三部分組成:導航授時衛星、地面檢測校正維護系統和用戶 ......

    uj5u.com 2020-09-10 03:52:25 more
  • 利用北斗衛星系統設計NTP網路時間服務器

    利用北斗衛星系統設計NTP網路時間服務器 利用北斗衛星系統設計NTP網路時間服務器 安徽京準電子科技官微——ahjzsz 概述 NTP網路時間服務器是一款支持NTP和SNTP網路時間同步協議,高精度、大容量、高品質的高科技時鐘產品。 NTP網路時間服務器設備采用冗余架構設計,高精度時鐘直接來源于北斗 ......

    uj5u.com 2020-09-10 03:52:35 more
  • 詳細解讀電力系統各種對時方式

    詳細解讀電力系統各種對時方式 詳細解讀電力系統各種對時方式 安徽京準電子科技官微——ahjzsz,更多資料請添加VX 衛星同步時鐘是我京準公司開發研制的應用衛星授時時技術的標準時間顯示和發送的裝置,該裝置以M國全球定位系統(GLOBAL POSITIONING SYSTEM,縮寫為GPS)或者我國北 ......

    uj5u.com 2020-09-10 03:52:45 more
  • 如何保證外包團隊接入企業內網安全

    不管企業規模的大小,只要企業想省錢,那么企業的某些服務就一定會采用外包的形式,然而看似美好又經濟的策略,其實也有不好的一面。下面我通過安全的角度來聊聊使用外包團的安全隱患問題。 先看看什么服務會使用外包的,最常見的就是話務/客服這種需要大量重復性、無技術性的服務,或者是一些銷售外包、特殊的職能外包等 ......

    uj5u.com 2020-09-10 03:52:57 more
  • PHP漏洞之【整型數字型SQL注入】

    0x01 什么是SQL注入 SQL是一種注入攻擊,通過前端帶入后端資料庫進行惡意的SQL陳述句查詢。 0x02 SQL整型注入原理 SQL注入一般發生在動態網站URL地址里,當然也會發生在其它地發,如登錄框等等也會存在注入,只要是和資料庫打交道的地方都有可能存在。 如這里http://192.168. ......

    uj5u.com 2020-09-10 03:55:40 more
  • [GXYCTF2019]禁止套娃

    git泄露獲取原始碼 使用GET傳參,引數為exp 經過三層過濾執行 第一層過濾偽協議,第二層過濾帶引數的函式,第三層過濾一些函式 preg_replace('/[a-z,_]+\((?R)?\)/', NULL, $_GET['exp'] (?R)參考當前正則運算式,相當于匹配函式里的引數 因此傳遞 ......

    uj5u.com 2020-09-10 03:56:07 more
  • 等保2.0實施流程

    流程 結論 ......

    uj5u.com 2020-09-10 03:56:16 more
最新发布
  • 使用Django Rest framework搭建Blog

    在前面的Blog例子中我們使用的是GraphQL, 雖然GraphQL的使用處于上升趨勢,但是Rest API還是使用的更廣泛一些. 所以還是決定回到傳統的rest api framework上來, Django rest framework的官網上給了一個很好用的QuickStart, 我參考Qu ......

    uj5u.com 2023-04-20 08:17:54 more
  • 記錄-new Date() 我忍你很久了!

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 大家平時在開發的時候有沒被new Date()折磨過?就是它的諸多怪異的設定讓你每每用的時候,都可能不小心踩坑。造成程式意外出錯,卻一下子找不到問題出處,那叫一個煩透了…… 下面,我就列舉它的“四宗罪”及應用思考 可惡的四宗罪 1. Sa ......

    uj5u.com 2023-04-20 08:17:47 more
  • 使用Vue.js實作文字跑馬燈效果

    實作文字跑馬燈效果,首先用到 substring()截取 和 setInterval計時器 clearInterval()清除計時器 效果如下: 實作代碼如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta ......

    uj5u.com 2023-04-20 08:12:31 more
  • JavaScript 運算子

    JavaScript 運算子/運算子 在 JavaScript 中,有一些運算子可以使代碼更簡潔、易讀和高效。以下是一些常見的運算子: 1、可選鏈運算子(optional chaining operator) ?.是可選鏈運算子(optional chaining operator)。?. 可選鏈操 ......

    uj5u.com 2023-04-20 08:02:25 more
  • CSS—相對單位rem

    一、概述 rem是一個相對長度單位,它的單位長度取決于根標簽html的字體尺寸。rem即root em的意思,中文翻譯為根em。瀏覽器的文本尺寸一般默認為16px,即默認情況下: 1rem = 16px rem布局原理:根據CSS媒體查詢功能,更改根標簽的字體尺寸,實作rem單位隨螢屏尺寸的變化,如 ......

    uj5u.com 2023-04-20 08:02:21 more
  • 我的第一個NPM包:panghu-planebattle-esm(胖虎飛機大戰)使用說明

    好家伙,我的包終于開發完啦 歡迎使用胖虎的飛機大戰包!! 為你的主頁添加色彩 這是一個有趣的網頁小游戲包,使用canvas和js開發 使用ES6模塊化開發 效果圖如下: (覺得圖片太sb的可以自己改) 代碼已開源!! Git: https://gitee.com/tang-and-han-dynas ......

    uj5u.com 2023-04-20 08:01:50 more
  • 如何在 vue3 中使用 jsx/tsx?

    我們都知道,通常情況下我們使用 vue 大多都是用的 SFC(Signle File Component)單檔案組件模式,即一個組件就是一個檔案,但其實 Vue 也是支持使用 JSX 來撰寫組件的。這里不討論 SFC 和 JSX 的好壞,這個仁者見仁智者見智。本篇文章旨在帶領大家快速了解和使用 Vu ......

    uj5u.com 2023-04-20 08:01:37 more
  • 【Vue2.x原始碼系列06】計算屬性computed原理

    本章目標:計算屬性是如何實作的?計算屬性快取原理以及洋蔥模型的應用?在初始化Vue實體時,我們會給每個計算屬性都創建一個對應watcher,我們稱之為計算屬性watcher ......

    uj5u.com 2023-04-20 08:01:31 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:01:10 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:00:32 more