客戶端腳本和服務器端腳本有什麼區別?

漢武帝在武漢加油


什麼是腳本語言

首先需要了解“腳本語言”的概念,腳本語言通常為一種擴展語言,也可以理解為一種動態編程語言,用來封裝、擴展提升特定系統、應用擴展性、維護性。

常見的腳本語言

我們常見的腳本語言包括:Javascript、Lua、PHP、Python、Bash等。

腳本語言的作用

腳本語言的存在,很大程度上簡化了系統、應用開發,比如:我們在開發一個網站服務的時候,早期我們需要採用C/C++去實現,開發者需要了解C/C++許多底層技術(網絡通信、文件讀寫、內存控制等),這對於一般程序開發者而言是很難做到的,但腳本語言的誕生就解決了這個問題,我們可以將一些Web相關的操作封裝起來,通過調用腳本語言的方式進行擴展,無需再瞭解如此多的技術細節。

什麼是客戶端、服務端

在瞭解了腳本的作用之後,我們迴歸本題,客戶端腳本和服務端腳本,我們需要再瞭解客戶端和服務端這兩個概念。

顧名思義,客戶端就是客戶使用的軟件終端,這個客戶端可以是軟件、遊戲,或者是現在最常見的客戶端:網頁瀏覽器。服務端就是跑在服務器上提供服務的終端。

什麼是客戶端腳本、服務端腳本

那麼客戶端腳本,就是為了擴展客戶端功能的腳本語言,例如瀏覽器使用的Javascript,遊戲客戶端會使用Lua,封裝一些業務層的邏輯處理,服務端腳本則是PHP、Perl、Ruby這些,提供服務器擴展的腳本。

他們的區別是什麼

他們最直接的區別就是運行的地方不同,另外就是這些腳本語言根據端的需要封裝的功能擴展不同,同時也可能提供的腳本語言的語法上會有差別。


Coral中國


讓我們先談談腳本。腳本語言和非腳本語言的關鍵區別在於是否編譯。簡單地說,當腳本語言運行時,它一次讀取並執行一行,程序是一個明文可讀的文本文件。幾種流行語言被很好地分類。完全不是。Python、PHP和JavaScript看起來都一樣。在這裡,要補充的是,HTML、XML和CSS永遠不應該被歸類到腳本語言中。它們甚至不算編程語言。如果你不相信他們,把他們算作1 1。

然後回到主題,腳本分為客戶端和服務器。顧名思義,腳本是根據運行位置劃分的,對應於網絡的客戶機和服務器。在用戶瀏覽器中運行的腳本是客戶端腳本。用戶可以在瀏覽器中右鍵單擊源代碼或F12來查看這些代碼。目前,JavaScript應該是使用最廣泛的腳本。似乎仍有一些VBScript可以忽略。網站用戶看不到服務器端代碼。您只能看到從服務器端請求瀏覽器後返回的結果,如普通的ASP、ASP.NET、PHP和JSP。

最後,讓我們來談談Node.js,它於2009年作為服務器端JavaScript運行環境推出。谷歌的V8引擎在內部被用來解析和執行JavaScript。這是什麼意思?JavaScript殺死了前端和後端。根據標題,JavaScript既是客戶端腳本又是服務器腳本。當一種語言不能被清楚地劃分為某個陣營時,分類就沒有意義了。


Puyuam


看到這個問題,其實我愣了幾秒鐘,腳本區分客戶端和服務端是很早以前的事情了,自從Node.js出現以後,這個概念貌似沒人提了。

我們先來說說什麼是腳本。腳本語言和非腳本語言關鍵的區別就是是否要編譯。換成大白話來說,腳本語言運行起來的時候,是讀一行執行一行,程序就是明文可讀的文本文件。幾個流行的語言就很好分類了,C/C++,JAVA肯定不是了,Python,PHP,JavaScript看著都像。這裡補充一點,HTML,XML,CSS這些千萬不要把它們歸入腳本語言了,它們連編程語言都不算,不信你用它們算個1+1試試。

然後回到題目,腳本分成客戶端和服務端,顧名思義,是按照運行的位置劃分的,對應著Web的客戶端和服務端。在用戶瀏覽器中運行的腳本就是客戶端腳本,用戶可以瀏覽器右擊源碼或者F12查看到這些代碼,目前應用最廣泛的應該就是JavaScript了,貌似還有少部分的VBScript,可以忽略不計了。服務端代碼是網站用戶看不到的,你只能看到你操作瀏覽器向服務端請求後,它在服務端運行後返回回來的結果,比如常見的ASP,ASP.NET,PHP,JSP。

最後說一下前面說到的Node.js,它是2009年推出的一款服務端的JavaScript運行環境,內部使用的是Google的V8引擎來解析執行JavaScript。這意味著什麼?JavaScript前後端通殺了,按照題目的說法,

JavaScript即是客戶端腳本,也是服務端腳本。當某一種語言無法明確地劃分到某個陣營的時候,這個分類也就沒有意義了。


SuperBean


客戶端腳本由用戶的瀏覽器解釋和運行,運行在用戶的電腦上,佔用的是用戶電腦的資源。常見的客戶端腳本有JavaScript和VBScript。

服務器端腳本由服務器解釋和運行,佔用的是服務器資源。常見的服務器端腳本有asp,php,jsp等。服務器端腳本運行完成後通常需要把運行結果回傳到用戶瀏覽器上顯示。

在web開發中,客戶端腳本與服務器端腳本需要同時使用,協同工作。


天道酬勤2021


在服務器端運行的腳本語言是服務器端腳本,在客戶段運行的腳本是客戶段腳本,本質區別是運行位置不同。

從使用方式上講:服務器端腳本適合處理諸如數據庫訪問,安全驗證等應用;客戶端腳本適合處理有效性驗證,頁面特效等應用。


peanut


首先腳步執行環境不一樣,其次執行人不同


分享到:


相關文章: