node.js探索之路1、mac下安装node.js(一)、升级系统到最新(二)、升级xcodexcode-select-p//检查是否安装了xcode,如果有一个路径,表示xcode-select-install//installxcode/usr/bin/ruby-e"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)"//installhomebrew,官网:https://brew.sh/index_zh-cn.htmlbrewinstallnode//使用HomeBrew安装nodejsnpmintall-gn//将n模块安装到全局,从而控制node版本2,node启动一个web服务器新建node_test目录,在内部创建server.js文件,编写代码,在终端执行:$cdnode_test/imooc/beginning$nodeserver.js注意:每次修改response.end('HelloWorldn')返回的内容,必须在终端打开执行“ctrl+c”停止当前服务,然后重启“nodeserver.js”。3.Node模块体系在node.js中,文件和模块是一一对应的。(1)、模块流程:(2)、module.exports与export的区别:module.exports=add;//特殊对象类型;(推荐,支持existing),module.exports最终返回给调用者;导出.add=添加;//传统模块实例;(exports是辅助方法),导出挂载属性和方法,然后将属性赋值给module.exports;4.nodeAPI的url(1)和url.parse()组成url地址:protocol:指定底层协议,http或ftp等slashes:协议中是否有双斜杠host:IP地址或域名nameofhttpport:端口hostname:主机名hash:哈希值,anchorsearch:queryStringparameterquery:发往http的数据,参数字符串pathname:访问资源路径名path:pathhref:超链接URI:UniformResourceIdentifier,统一资源标识符;URL:UniformResourceLocator,统一资源定位符;URN:UniformResourceName,统一的资源名称。其中,URL和URN是URI的子集。(2)、url.parse(urlString,bool,bool):将locator解析为对象,识别无协议的url。第二个参数确定查询部分是作为字符串还是作为对象返回。默认是返回一个字符串。第二个参数默认为false;如果在上图中设置为true,那么你看到的查询就是一个对象的形式。第三个参数表示当没有完整的协议串(即没有http:、https:)时如何解释'//'后的字符,如果为false,'//'后的字符将被解释为一个路径,如果为真,则“//”和“/”之间的字符串将被解释为主机。对比上图中添加的第三个参数,发现pathname、paht、host、port、hostname会有所不同。(3)、url.resolve():合并一个基本URL和指定的超链接目标URL(4)、url.format():将对象解析成定位器(即URL)5、QueryString使用(1)、querystring.stringify(obj,para1,para2)//将object转换成url中query部分的形式(序列化)参数:1.要转换的object2.参数之间的链接(默认&)3.ThekeyandSymbolsbetweenvalues(default=)(2),querystring.parse(string,para1,para2)//将querystring转换为object(反序列化)参数:1.querystring2.linker(default&),如果不是'&',则需要指定参数中使用的符号,例如下面的','。3.key和value之间的符号(默认=),如果不是'=',需要指定参数中使用的符号,例如行中的':'。4、参数个数(默认最多1000个,0无限制)(3)、querystring.escape(string)//正文翻译(4)、uquerystring.unescape(string)//反向翻译5、nodepathAPINote:该方法属于path模块,使用前需要引入path模块(varpath=require(“path”))。path.resolve方法用于将相对路径转换为绝对路径:path.resolve([from...],to)//将参数to所在位置的字符解析为绝对路径。其中:fromsourcepath,to会解析为一串绝对路径。例子:
