标签:代表 string encoding write 函数参数 length 中括号 offset
看文档的时候产生的疑问,如一个node中的write方法:
buf.write(string[, offset[, length]][, encoding])
函数参数中的中括号代表什么了?怎么有些只有半个括号,比如string[ 或 offset[;而有的却是length]][这样了?
简单的回答就是中括号表示这个参数非必须.
首先,这样使用中括号只是出于一种的表达形式的需要而已(这样的表达形式很常见),这与api本身是没有关系的。
然后,我们拿上面的例子来说
buf.write(string[, offset[, length]][, encoding])
对于buf.write这个方法:
第一个参数string是必须的,他表示你要写入的内容;往后的offset、length、encoding这些参数都是非必须的。这些参数你可以不传(用[]括起来表示不传),但并不表示这三个参数你想怎么传就怎么传的,这里是有规则的,规则从这里中括号的对应关系中可以看出来。我们来看他的对应关系:[, offset[, length]] && [ encoding]。这表示offset、length和encoding你可以传或者不传,但是你要是没有传offset的话那length是一定不能传的,这就是为什么length要放在offset的括号里面的原因。
所以整个例子理解起来就是:
string必须传,offset、length、encoding可传可不传,但是offset不传的话length也不能传。
标签:代表,string,encoding,write,函数参数,length,中括号,offset 来源: https://www.cnblogs.com/ranyonsue/p/10411351.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。