程序媛的mac修煉手冊-- Node.js入門篇

最近因為參與一個微信小程序的開發,開始摸索JavaScript。期間,需要基于Node.js安裝微信開發工具的依賴項,所以又順帶學習了Node.js的包管理工具npm(Node Package Manager)。不過,之前看到國外的全棧大佬???????說,npm過時了,現在更全能的替代工具是pnpm。

下面就跟各位分享一下用Mac入門Node.js的經驗。

目錄

一、Node.js簡介

二、Node.js下載

三、Node.js安裝

四、Node.js環境配置

五、Node.js安裝驗證

六、退出Node.js環境

七、釋義


一、Node.js簡介

  1. Javascript是事件驅動型編程語言,Node.js是一個運行 JavaScript 代碼的開發平臺,基于Google的V8引擎,是后端程序員最好的開發環境。

  2. 用戶在安裝Node.js 時,會同時安裝npm(Node Package Manager),這是 Node.js 的包管理器,用于安裝、管理和發布 JavaScript 包。

  3. 至于老外流行的pnpm,和npm一樣都是用來管理 JavaScript 包的工具,可以用來安裝、更新、刪除和管理項目依賴項。此外,JavaScript 的的包管理器還有Yarn。

  4. 總之一句話,pnpm安裝在磁盤上的占用空間更小,安裝速度更快。???????

二、Node.js下載

打開Node.js官網,如下所示:

Node.js — Download

對于任何操作系統,Node.js都準備了兩個版本,一個是長期維護版(LTS版),一個是最新版(Current版)。

聽勸,果斷下載長期維護版!

?三、Node.js安裝

下載Node.js的安裝包pkg后,安裝常規方法安裝。

注意,安裝過程一直點“continue”,直到最后一頁,?如下圖所示。
務必確保安裝路徑為?/usr/local/bin
一般情況下,Node和npm會同時安裝。

四、Node.js環境配置

Node.js安裝成功后,需要在Mac「終端(terminal)」中配置全局環境變量。

1、打開「終端(terminal)」,輸入以下命令行,確保切換到根目錄

cd ~

2、執行以下命令,配置zsh shell下的環境變量。如果是在bash shell下安裝,則執行對應的命令行 vim ?.bash_profile

vim .zshrc

? 3、命令行執行過程中,按 i 進入編輯模式,在最后一行加上PATH=$PATH:/usr/local/bin

? 4、按 esc 退出編輯模式,并輸入:wq保存并退出

?5、執行以下命令行,使得文件立即生效。如果是在bash shell下,則執行source? .bash_profile

source .zshrc

五、Node.js安裝驗證

打開「終端(terminal)」,依次輸入以下命令

npm -v
node -v
node

?輸出以下內容,即表示Node.js安裝成功

六、退出Node.js環境

按兩次control+c或一次control+d退出node環境

七、釋義

  1. Javascript是事件驅動型編程語言,Node.js是一個運行 JavaScript 代碼的開發平臺,基于Google的V8引擎,是后端程序員最好的開發環境。它允許開發者使用 JavaScript 編寫服務器端代碼,構建網絡應用程序。

  2. Node.js 提供了許多內置模塊,例如文件系統、HTTP、HTTPS 等,使開發者能夠輕松地構建各種類型的應用程序。Node采用了一個稱為“事件循環(event loop)"、非阻塞式I/O的架構,編寫出可擴展性高的服務器,讓Javascript運行于服務器端。Node采用一系列“非阻塞”庫來支持事件循環的方式。本質上就是為文件系統、數據庫之類的資源提供接口。向文件系統發送一個請求時,無需等待硬盤(尋址并檢索文件),硬盤準備好的時候非阻塞接口會通知Node。

  3. 用戶在安裝Node.js 時,會同時安裝npm(Node Package Manager),這是 Node.js 的包管理器,用于安裝、管理和發布 JavaScript 包。

  4. 開發者可通過 npm 在項目中安裝和管理依賴項,這些依賴項可以是庫、框架、工具等。npm 還允許開發者發布自己的 JavaScript 包,供他人使用。在開發中,如果要使用某個 SDK (Software Development Kit,軟件開發工具包)來訪問特定服務、平臺或功能,通常這個 SDK 會依賴于其他的庫或模塊。這些依賴項可能包括其他 SDK、工具庫、輔助函數等,它們需要在開發項目中進行安裝,以便 SDK 能夠正常運行。

  5. 至于老外流行的pnpm,和npm一樣都是用來管理 JavaScript 包的工具,可以用來安裝、更新、刪除和管理項目依賴項。此外,JavaScript 的的包管理器還有Yarn。

  6. 只不過,npm 默認情況下會在每個項目的本地目錄中復制依賴項,因此對于每個項目都會有一個 node_modules 文件夾。而 pnpm 使用了符號鏈接的方式,它會在一個全局位置存儲依賴項,并通過符號鏈接將它們鏈接到每個項目中,避免了重復安裝相同版本的包。pnpm 支持并發安裝依賴項,而 npm 默認是串行安裝。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/710887.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/710887.shtml
英文地址,請注明出處:http://en.pswp.cn/news/710887.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

flutter學習(一) 安裝以及配置環境

首先需要下載flutter,然后解壓 然后配置環境變量,配置到bin目錄就行 配置完之后cmd運行flutter doctor 你就會發現,都是錯 此時腦海里響起,臥槽,怎么回事,咋辦 別著急,我教你。。。 問題 這…

RK3568 RK809電源管理 RTC功能使能 定時喚醒

概述 RK809 是一款高性能 PMIC,RK809 集成 5 個大電流 DCDC、9 個 LDO、2 個 開關SWITCH、 1個 RTC、1個 高性能CODEC、可調上電時序等功能。 系統中各路電源總體分為兩種:DCDC 和 LDO。兩種電源的總體特性如下(詳細資料請自行搜索): DCDC:輸入輸出壓差大時,效率高,但…

python學習筆記 - 標準庫常量

Python 中有一些內置的常量,它們是一些特殊的值,通常不會改變。以下是其中一些常見的內置常量及其詳細解釋以及使用示例: True: 表示布爾值真。給 True 賦值是非法的并會引發 SyntaxError。 x True print(x) # 輸出&#xff1a…

內網穿透 nas/樹莓派+ipv4服務器 (ipv6)

nas 1.有個服務器 2.有個nas https://github.com/snail007/goproxy/blob/master/README_ZH.md https://github.com/snail007/proxy_admin_free/blob/master/README_ZH.md 2個官網一個是程序,一個是網站 手冊 https://snail007.host900.com/goproxy/manual/zh/#/?i…

Unity3D Shader事項法線貼圖功能詳解

前言 Unity3D它提供了豐富的功能和工具,使開發人員能夠輕松創建出色的游戲和應用程序。其中Shader是Unity3D中非常重要的一部分,它可以幫助開發人員實現各種視覺效果,包括法線貼圖功能。 對惹,這里有一個游戲開發交流小組&#…

rocketmq+rocket-dashboard win10安裝部署+注冊為Windows服務

1.1 首先去官網下載zip包 選擇自己需要的版本 下載 | RocketMQ 1.2 、下載后,解壓到指定目錄 1.3、配置RocketMQ環境變量 注意,看對應的版本需要jdk版本 1.4、啟動mqnameserver 進入bin目錄下,雙擊啟動mqnamesrv.cmd 啟動后,…

灰度圖像轉化為黑白圖像、轉化圖像為一位位深度的圖像(僅保留黑色)

/// <summary> /// 灰度圖像處理 /// </summary> public class PicGray {/// <summary>/// 獲取pic圖像對應的黑白圖像/// </summary>/// <param name"pic"></param>/// <param name"NumGray">像素灰度值</p…

webpack5基礎--02_基本配置( 5 大核心概念)

基本配置 在開始使用 Webpack 之前&#xff0c;我們需要對 Webpack 的配置有一定的認識。 5 大核心概念 entry&#xff08;入口&#xff09; 指示 Webpack 從哪個文件開始打包 output&#xff08;輸出&#xff09; 指示 Webpack 打包完的文件輸出到哪里去&#xff0c;如何…

Vue項目構建時遇到的問題

Vue項目構建時遇到的問題與上線相關問題 項目構建遇到的問題構建指令關于JavaScript文件無法識別的問題關于element-plus組件庫中的模塊顯示找不到的問題關于路由懶加載時組件路徑報錯問題關于項目靜態資源基準路徑的設置關于路由模式的問題 關于nginx服務器的使用 項目構建遇到…

事物管理(黑馬學習筆記)

事物回顧 在數據庫階段我們已學習過事務了&#xff0c;我們講到&#xff1a; 事物是一組操作的集合&#xff0c;它是一個不可分割的工作單位。事務會把所有的操作作為一個整體&#xff0c;一起向數據庫提交或者是撤銷操作請求。所以這組操作要么同時成功&#xff0c;要么同時…

java實現根據 表索引 批量新增或更新數據信息

目的 通過數據庫名、表名實現動態添加活更新數據。添加或更新由唯一索引判斷。 實現 思路 查詢數據庫表的唯一索引-CSDN博客 根據數據庫表名動態查詢表字段-CSDN博客 達夢數據庫根據唯一索引批量新增或更新數據-CSDN博客 將數據轉換為sql語句需要的格式 完善代碼&#xff0c;實…

maven常用打包命令

1.背景 2.代碼 1 mvn常用命令 一般情況下對于一個maven項目&#xff0c;cd切換到當前項目路徑下&#xff0c;執行如下示例命令即可對項目進行打包。 mvn clean install mvn -U clean package -Dmaven.test.skiptrue mvn clean package -Dmaven.test.skiptrue -P prod mvn cle…

JavaScript數組操作指南:20個精通操作技巧指南

splice、 slice、 pop 和 shift。數組的排序方法是穩定且非原地算法的嗎&#xff1f;要記住所有 JavaScript 數組方法以及它們之間的區別并不容易。它們的名稱相似&#xff0c;就好像直接從同義詞詞典中提取一樣。 這個數組速查表列出了 JavaScript 中通常需要的所有數組方法&…

Gson使用Object接收長數字問題

近期發現公司同事在使用Gson對數字進行反序列列化時出現丟失精度的問題&#xff0c;在這里搬運一下&#xff0c;做個記錄~ 現象 使用Gson反序列化長Long數字(大于16位),如果用Object類型來接收則會丟失精度。 Gson會將數字反序列化為double類型,double類型本身就容易丟精度。…

小程序基礎

小程序基礎 1. 認識什么是小程序 什么是微信小程序 微信小程序是一種運行在微信內部的 輕量級 應用程序。 在使用小程序時 不需要下載安裝&#xff0c;用戶 掃一掃 或 搜一下 即可打開應用。它也體現了 “用完即走” 的理念&#xff0c;用戶不用關心安裝太多應用的問題。它…

weak的實現原理

iOS 在運行時維護著一個全局的弱引用表&#xff0c;該表是一個 hash 表&#xff0c;hash表的 key 是 對象本身&#xff0c;value 是指向該對象的所有 weak 指針的地址數組。 /**全局的弱引用表&#xff0c;本質是一個hash結構&#xff0c;對象本身作為key, 存儲weak修飾的指…

大模型訓練經驗

1.模型訓練好后預測全是起始符號。 解決辦法&#xff1a;訓練數據的輸入輸出去掉起始符號。 2.模型訓練后學不到有效信息。 加大epoch&#xff0c;我加大到了1000。 3.模型訓練后預測沒有結束符&#xff0c;暫時未解&#xff0c;另外&#xff0c;發現當訓練不足時&#xff…

Metasploit安裝及使用教程(非常詳細)從零基礎入門到精通,看完這一篇就夠了。

通過本篇文章&#xff0c;我們將會學習以下內容&#xff1a; 1、在Windows上安裝Metasploit 2、在Linux和MacOS上安裝Metasploit 3、在Kali Linux中使用 Metasploit 4、升級Kali Linux 5、使用虛擬化軟件構建滲透測試實驗環境 6、配置SSH連接 7、使用SSH連接Kali 8、配…

如何學習自然語言處理之語言模型

自然語言處理&#xff08;NLP&#xff09;是一種人工智能技術&#xff0c;它使計算機能夠理解和處理人類語言。而語言模型是NLP中的一個重要概念&#xff0c;主要是用來估測一些詞的序列的概率&#xff0c;即預測p(w1, w2, w3 … wn)&#xff0c;其中一個應用就是句子的生成。 …

JVM運行流程

? 作者&#xff1a;小胡_不糊涂 &#x1f331; 作者主頁&#xff1a;小胡_不糊涂的個人主頁 &#x1f4c0; 收錄專欄&#xff1a;JavaEE &#x1f496; 持續更文&#xff0c;關注博主少走彎路&#xff0c;謝謝大家支持 &#x1f496; JVM 1. 運行流程2. 運行時數據區2.1 堆&am…