摘要:可以先定義在傳遞,也可以直接使用匿名函數(shù)進(jìn)行傳遞。兩種方式都可以,相比較先定義在傳遞,匿名函數(shù)寫起來(lái)更簡(jiǎn)潔,如果有一些不需要重復(fù)調(diào)用的場(chǎng)景,可以使用這種方式。匿名函數(shù)傳遞方法中第一個(gè)參數(shù)我們直接以匿名函數(shù)的方式直接書(shū)寫。
Node.js函數(shù)
在JS語(yǔ)言中,一個(gè)函數(shù)可以作為另一個(gè)函數(shù)的參數(shù)。可以先定義在傳遞,也可以直接使用匿名函數(shù)進(jìn)行傳遞。
Node.js中函數(shù)的使用與JS類似,基本差不多。
下面寫兩個(gè)例子。
先定義函數(shù),在進(jìn)行傳遞
// 定義函數(shù)say function say(val){ console.log(val) } // 我們將say函數(shù)作為execute第一個(gè)參數(shù)進(jìn)行傳遞,這樣以來(lái),say函數(shù)就變成了execute中的本地變量someFunction // exectue可以通過(guò)調(diào)用someFunction()來(lái)使用say函數(shù),say函數(shù)有一個(gè)變量,在調(diào)用的時(shí)候我們可以傳遞一個(gè)變量。 function execute(someFunction, val) { someFunction(val) } execute(say,"思否")
這個(gè)例子就是先定義函數(shù),然后將定義的函數(shù)作為參數(shù)給另一個(gè)函數(shù)使用。
還有一種就是直接使用匿名函數(shù)
function execute(somefunction, val) { somefunction(val) } execute(function(val){console.log(val)}, "思否")
這種方式就是直接使用匿名函數(shù)進(jìn)行傳遞,我們?cè)趀xecute接收第一個(gè)參數(shù)的地方直接定義了我們準(zhǔn)備傳參的函數(shù)。
兩種方式都可以,相比較先定義在傳遞,匿名函數(shù)寫起來(lái)更簡(jiǎn)潔,如果有一些不需要重復(fù)調(diào)用的場(chǎng)景,可以使用這種方式。
了解函數(shù)傳遞以后,我們?cè)趤?lái)看函數(shù)傳遞如何讓HTTP服務(wù)器工作的。
// 匿名函數(shù)傳遞 const http = require("http") http.createServer((request , response) => { response.writeHead(200, {"Content-Type": "text/plain"}) response.write("Hello World") response.end() }).listen(8888)
http.createServer方法中第一個(gè)參數(shù)我們直接以匿名函數(shù)的方式直接書(shū)寫。
const http = require("http") // 先定義在傳遞 function onRequest(request, response) { response.writeHead(200,{"Content-Type": "text/plain"}) response.write("Hello sifou.com") response.end() } http.createServer(onRequest).listen(8888)
這段代碼我們先定義函數(shù)onRequest,然后在進(jìn)行傳遞。兩種方法都可以
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/104410.html
摘要:全局范圍生效,不需要。解析本地路徑首先來(lái)為你介紹對(duì)象,可以先在控制臺(tái)中看一下每一個(gè)模塊都有屬性來(lái)唯一標(biāo)示它。通常是文件的完整路徑,但是在控制臺(tái)中一般顯示成。 showImg(https://segmentfault.com/img/remote/1460000009060869?w=1794&h=648); 本文作者:Jacob Beltran 編譯:胡子大哈 翻譯原文:http:...
Node.js從2009年誕生至今,已經(jīng)發(fā)展了兩年有余,其成長(zhǎng)的速度有目共睹。從在github的訪問(wèn)量超過(guò)Rails,到去年底Node.jsS創(chuàng)始人Ryan Dalh加盟Joyent獲得企業(yè)資助,再到今年發(fā)布Windows移植版本,Node.js的前景獲得了技術(shù)社區(qū)的肯定。InfoQ一直在關(guān)注Node.js的發(fā)展,在今年的兩次Qcon大會(huì)(北京站和杭州站)都有專門的講座。為了更好地促進(jìn)Node.j...
摘要:一個(gè)標(biāo)準(zhǔn)性的事件就是年的橫空出世。引擎快速處理能力和異步編程風(fēng)格,讓開(kāi)發(fā)者從多線程中解脫了出來(lái)。其次,通過(guò)異步編程范式將其高并發(fā)的能力發(fā)揮的淋漓盡致。它也僅僅是一個(gè)處理請(qǐng)求并作出響應(yīng)的函數(shù),并無(wú)任何特殊之處。 showImg(https://segmentfault.com/img/remote/1460000010819116); 在正式學(xué)習(xí) Express 內(nèi)容之前,我們有必要從大...
摘要:注很多以前的源碼分析文章中,所寫的第一個(gè)執(zhí)行的文件代碼為,但這個(gè)文件在中已被移除,并被拆解為了等其他下的文件,為正文作為第一段被執(zhí)行的代碼,它的歷史使命免不了就是進(jìn)行一些環(huán)境和全局變量的初始化工作。 大家可能會(huì)好奇,在 Node.js 啟動(dòng)后,第一個(gè)執(zhí)行的 JavaScript 文件會(huì)是哪個(gè)?它具體又會(huì)干些什么事? 一步步來(lái)看,翻開(kāi) Node.js 的源碼,不難看出,入口文件在 src...
摘要:感謝大神的免費(fèi)的計(jì)算機(jī)編程類中文書(shū)籍收錄并推薦地址,以后在倉(cāng)庫(kù)里更新地址,聲音版全文狼叔如何正確的學(xué)習(xí)簡(jiǎn)介現(xiàn)在,越來(lái)越多的科技公司和開(kāi)發(fā)者開(kāi)始使用開(kāi)發(fā)各種應(yīng)用。 說(shuō)明 2017-12-14 我發(fā)了一篇文章《沒(méi)用過(guò)Node.js,就別瞎逼逼》是因?yàn)橛腥嗽谥跎虾贜ode.js。那篇文章的反響還是相當(dāng)不錯(cuò)的,甚至連著名的hax賀老都很認(rèn)同,下班時(shí)讀那篇文章,竟然坐車的還坐過(guò)站了。大家可以很...
摘要:感謝大神的免費(fèi)的計(jì)算機(jī)編程類中文書(shū)籍收錄并推薦地址,以后在倉(cāng)庫(kù)里更新地址,聲音版全文狼叔如何正確的學(xué)習(xí)簡(jiǎn)介現(xiàn)在,越來(lái)越多的科技公司和開(kāi)發(fā)者開(kāi)始使用開(kāi)發(fā)各種應(yīng)用。 說(shuō)明 2017-12-14 我發(fā)了一篇文章《沒(méi)用過(guò)Node.js,就別瞎逼逼》是因?yàn)橛腥嗽谥跎虾贜ode.js。那篇文章的反響還是相當(dāng)不錯(cuò)的,甚至連著名的hax賀老都很認(rèn)同,下班時(shí)讀那篇文章,竟然坐車的還坐過(guò)站了。大家可以很...
閱讀 3318·2021-11-16 11:45
閱讀 2669·2021-09-22 15:23
閱讀 574·2021-07-30 14:58
閱讀 470·2019-08-30 15:54
閱讀 2247·2019-08-29 16:19
閱讀 3027·2019-08-29 12:45
閱讀 949·2019-08-23 17:57
閱讀 1803·2019-08-23 17:54