亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

菜鳥教程中node語法寫法的疑問,為什么語法中要加中括號?

菜鳥教程中node語法寫法的疑問,為什么語法中要加中括號?

瀟湘沐 2019-02-27 17:12:17
Node緩沖區拷貝語法為:buf.copy(targetBuffer[, targetStart[, sourceStart[, sourceEnd]]])接下來舉例寫的代碼都是這樣的:var buf1 = Buffer.from('abcdefghijkl');var buf2 = Buffer.from('RUNOOB');//將 buf2 插入到 buf1 指定位置上buf2.copy(buf1, 2);console.log(buf1.toString());我看語法中用到了中括號,可是實際寫的時候也沒有加中括號,為什么語法中會出現中括號,還是因為這是一種約定成俗的規則呢?自己也試著嘗試了一下,我看也不用加中括號呀var buf1 = Buffer.from("abcdefghijklmnopqrstuvwxyz");var buf2 = Buffer.from("123456789");buf2.copy(buf1 , 2 , 3 , 4);console.log(buf1.toString());//ab4defghijklmnopqrstuvwxyz謝謝大家的解答!^ ^
查看完整描述

2 回答

?
絕地無雙

TA貢獻1946條經驗 獲得超4個贊

這個是介紹語法時提示可選參數,就拿

buf.copy(targetBuffer[, targetStart[, sourceStart[, sourceEnd]]])

它代表著有
buf.copy(targetBuffer)——完整拷貝緩沖區到目標區域,且覆蓋目標區域從頭開始的位置

buf.copy(targetBuffer, targetStart)——完整拷貝緩沖區到 目標緩沖區targetStart開始的位置

buf.copy(targetBuffer, targetStart, sourceStart)—— 從源緩沖區sourceStart開始的位置拷貝數據到 目標緩沖區targetStart開始的位置

buf.copy(targetBuffer, targetStart, sourceStart, sourceEnd)——從源緩沖區拷貝sourceStartsourceEnd 間的數據 到 目標緩沖區targetStart開始的位置
等4種用法,其中:
targetBuffer——目標緩沖區
targetStart ——目標緩沖區被覆蓋起始位置
sourceStart ——源緩沖區拷貝起始位置
sourceEnd ——源緩沖區拷貝結束位置


你自己后來測試舉例比較少,沒有真正了解這些用法的目的,對于諸如壓縮/解壓縮,或者加密/解密等等算法或者其他一些復雜的算法實現中,就會用到后面的功效。


查看完整回答
反對 回復 2019-03-04
?
鳳凰求蠱

TA貢獻1825條經驗 獲得超4個贊

雖然不怎么會Node,但我知道大部分的文檔這么寫都意味著后面是可選參數。
中括號的意思就是里面的內容不是必須的

查看完整回答
反對 回復 2019-03-04
  • 2 回答
  • 0 關注
  • 669 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號