我在阅读NodeJS文档中读出的19个套路讲述.docx

我在阅读NodeJS文档中读出的19个套路讲述.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
我在阅读NodeJS文档中读出的19个套路讲述

我在阅读NodeJS文档中读出的19个套路 虽然我已经用了三年多的NodeJS,也曾经以为自己对其无所不知。但是我好像从未有安静的坐下来仔细地阅读NodeJS的完整文档。如果有熟悉我的朋友应该知道,我之前已经看了HTML,DOM,Web APIs,CSS,SVG以及ECMAScript的文档,NodeJS是我这个系列的最后一个待翻阅的山峰。在阅读文档的过程中我也发现了很多本来不知道的知识,我觉得我有必要分享给大家。不过文档更多的是平铺直叙,因此我也以阅读的顺序列举出我觉得需要了解的点。 作者: 王下邀月熊_Chevalier来源:segmentfault|2016-11-21 10:25 ?收藏 ??分享 虽然我已经用了三年多的NodeJS,也曾经以为自己对其无所不知。但是我好像从未有安静的坐下来仔细地阅读NodeJS的完整文档。如果有熟悉我的朋友应该知道,我之前已经看了HTML,DOM,Web APIs,CSS,SVG以及ECMAScript的文档,NodeJS是我这个系列的最后一个待翻阅的山峰。在阅读文档的过程中我也发现了很多本来不知道的知识,我觉得我有必要分享给大家。不过文档更多的是平铺直叙,因此我也以阅读的顺序列举出我觉得需要了解的点。 querystring:可以用作通用解析器的模块 很多时候我们会从数据库或其他地方得到这种奇怪格式的字符串:name:Sophie;shape:fox;condition:new,一般来说我们会利用字符串切割的方式来讲字符串划分到JavaScript Object。不过querystring也是个不错的现成的工具: 1. const?weirdoString?=?`name:Sophie;shape:fox;condition:new`;?? 2. const?result?=?querystring.parse(weirdoString,?`;`,?`:`);?? 3. //?result:?? 4. //?{?? 5. //?name:?`Sophie`,?? 6. //?shape:?`fox`,?? 7. //?condition:?`new`,?? 8. //?};? V8 Inspector 以--inspect参数运行你的Node应用程序,它会反馈你某个URL。将该URL复制到Chrome中并打开,你就可以使用Chrome DevTools来调试你的Node应用程序啦。详细的实验可以参考这篇文章。不过需要注意的是,该参数仍然属于实验性质。 nextTick 与 setImmediate的区别 这两货的区别可能光从名字上还看不出来,我觉得应该给它们取个别名: ? process.nextTick()应该为process.sendThisToTheStartOfTheQueue() ? setImmediate应该为sendThisToTheEndOfTheQueue() 再说句不相关的,React中的Props应该为stuffThatShouldStayTheSameIfTheUserRefreshes,而State应该为stuffThatShouldBeForgottenIfTheUserRefreshes。 Server.listen 可以使用Object作为参数 我更喜欢命名参数的方式调用函数,这样相较于仅按照顺序的无命名参数法会更直观。别忘了Server.listen也可以使用某个Object作为参数: 1. require(`http`)?? 2. .createServer()?? 3. .listen({?? 4. port:?8080,?? 5. host:?`localhost`,?? 6. })?? 7. .on(`request`,?(req,?res)?=?{?? 8. res.end(`Hello?World!`);?? 9. });? 不过这个特性不是表述在http.Server这个API中,而是在其父级net.Server的文档中。 相对地址 你传入fs模块的距离可以是相对地址,即相对于process.cwd()。估计有些人早就知道了,不过我之前一直以为是只能使用绝对地址: 1. const?fs?=?require(`fs`);?? 2. const?path?=?require(`path`);?? 3. //?why?have?I?always?done?this...?? 4. fs.readFile(path.join(__dirname,?`myFile.txt`),?(err,?data)?=?{?? 5. //?do?something?? 6. });?? 7. //?when?I?could?just?do?this??

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档