第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么JavaScript方法的參數(shù)有時候感覺很隨意?

為什么JavaScript方法的參數(shù)有時候感覺很隨意?

qq_笑_17 2018-12-20 19:14:11
因為工作重點不在js 這一塊,遇到j(luò)s 的時候也就百度一下就夠用了。最近有時間在研究node.js ,發(fā)現(xiàn)有的地方的同一個方法參數(shù)竟然可有可無,順序貌似也隨意就非常納悶。nodejs 舉例子:pool.getConnection(function(err, connection) {// 獲取參數(shù) var param = req.query || req.params; // 建立連接 增加一個connection.query(insertSQL, [param.name,param.order],function(err, result) {         if(result) {            result = { code: 200, msg:'增加成功' };         }         responseJSON(res, result);         // 釋放連接         connection.release(); });}); connection 這里明明是三個參數(shù): sql語句, sql綁定的參數(shù), 查詢回調(diào)方法為啥還可以直接connection.query(insertSQL, function(err, result){}) 這樣少了一個參數(shù)使用呢?對于php、Java。。。語言來說,缺省參數(shù)沒有默認值不是應(yīng)該也要給個空值占位的嗎?為啥JavaScript就可以直接不要那個參數(shù)了???
查看完整描述

1 回答

?
眼眸繁星

TA貢獻1873條經(jīng)驗 獲得超9個贊

js允許你定義函數(shù)的時候定義n個,調(diào)用函數(shù)的時候傳小于或等于n個參數(shù),不會報錯。
其它語言中可能不允許這樣做。

像樓主這樣的,定義了三個參數(shù),使用的時候傳一三,直接跳過第二個參數(shù)的情況,是因為它的函數(shù)內(nèi)部會通過判斷參數(shù)類型來確定你傳的是哪個參數(shù)。
比如nodejs中很多參數(shù)是(data,option,callback)這種的形式的,但使用的時候可能很多時候不參數(shù)傳option參數(shù),于是就直接變成(data,callback)了。
參數(shù)內(nèi)部會判斷第二個參數(shù)是不是函數(shù),如果是的話,就把option設(shè)為默認值。


查看完整回答
反對 回復(fù) 2019-01-23
  • 1 回答
  • 0 關(guān)注
  • 413 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號