正确看待城市人口收缩,城区人口降低不代表城市活力下降
接下来,正确2024TGA腾讯电竞运动会无畏契约蚂蚁电竞全国挑战赛北方赛区郑州站和石家庄站的海选赛也行将进入收官阶段。
其间require依靠node中的fs模块来加载模块文件,看待口降经过fs.readFile读取到的是一个字符串。至此,城市城城市整个Node中完成require办法的整个流程代码现已调试完毕,城市城城市经过对源代码的调试,能够协助咱们学习其完成思路,代码风格及标准,有助于协助咱们完成东西库,提高咱们的代码思路,一起咱们知道相关原理,也对咱们处理日常开发工作中遇到的问题供给协助。
//界说导入类,人口参数为模块途径functionRequire(modulePath){//获取当时要加载的肯定途径letabsPathname=path.resolve(__dirname,modulePath);//获取一切后缀名constextNames=Object.keys(Module._extensions);letindex=0;//存储原始文件途径constoldPath=absPathname;functionfindExt(absPathname){if(index===extNames.length){returnthrownewError(文件不存在);}try{fs.accessSync(absPathname);returnabsPathname;}catch(e){constext=extNames[index++];findExt(oldPath+ext);}}//递归追加后缀名,人口判别文件是否存在absPathname=findExt(absPathname);//从缓存中读取,假如存在,直接回来成果if(Module._cache[absPathname]){returnModule._cache[absPathname].exports;}//创立模块,新建Module实例constmodule=newModule(absPathname);//增加缓存Module._cache[absPathname]=module;//加载当时模块tryModuleLoad(module);//回来exports目标returnmodule.exports;}源代码调试咱们能够经过VSCode调试Node.js过程创立文件a.jsmodule.exports=abc1.文件test.jsletr=require(./a)console.log(r)1.装备debug,实质是装备.vscode/launch.json文件,而这个文件的实质是能供给多个发动指令进口挑选。console.log(arguments)//exports,require,module,__filename,__dirnameNode中经过modules.export导出,收缩require引进。//界说包裹模块内容的函数Module.wrapper=[(function(exports,module,Require,__dirname,__filename){,})]_extensions用于针对不同的模块扩展名运用不同的加载办法,区人比方JSON和javascript加载办法肯定是不同的。
完成require模块加载器首要导入依靠的模块path,低不代表fs,vm,而且创立一个Require函数,低不代表这个函数接纳一个modulePath参数,表明要导入的文件途径constpath=require(path);constfs=require(fs);constvm=require(vm);//界说导入类,参数为模块途径functionRequire(modulePath){...}在Require中获取到模块的肯定途径,运用fs加载模块,这儿读取模块内容运用newModule来笼统,运用tryModuleLoad来加载模块内容,Module和tryModuleLoad稍后完成,Require的回来值应该是模块的内容,也便是module.exports。了解Node.jsNode.js是一个依据ChromeV8引擎的JavaScript运转环境,活力运用了一个事情驱动、活力非堵塞式I/O模型,让JavaScript运转在服务端的开发渠道,它让JavaScript成为与PHP、Python、Perl、Ruby等服务端言语等量齐观的脚本言语。
此类中界说了exports特色4.接着调试到module.load办法,下降该办法中运用了战略形式,下降Module._extensions[extension](this,filename)依据传入的文件后缀名不同调用不同的办法5.进入到该办法中,看到了中心代码,读取传入的文件地址参数,拿到该文件中的字符串内容,履行module._compile6.此办法中履行wrapSafe办法。
便是文件加载的时分将文件放入缓存中,正确再去加载模块时先看缓存中是否存在,假如存在直接运用,假如不存在再去从头加载,加载之后再放入缓存。深证成指收涨3.22%站上11000点整数关,看待口降创业板指收涨4.75%,收报2289.84点盘中一度触及2300点大关。
半导体板块打开反弹,城市城城市中芯世界涨超10%,赛力斯、上海电气、川发龙蟒、华映科技、青岛金王等涨停,海能达、常山北明、四川长虹等热门股收跌当地时间11月5日,人口央视记者得悉,美国佛罗里达州选民当日早上在州政府网站上查询选民挂号状况时收到错误信息。
现在,收缩佛罗里达州正在处理该问题,并正在为选民供给其他网站和地址,以便他们查找选民信息和选区据央视新闻,区人到美国东部时刻5日早上7时(北京时刻20时),区人美国已有超越20个州敞开2024年总统大选投票站,其间包含北卡罗来纳州、特拉华州、佐治亚州、密歇根州、宾夕法尼亚州和马萨诸塞州等。
(责任编辑:五家渠市)
- IOTE 2025世界物联网展·上海站携手
- 职场菜鸟的时髦经,你值得拥有
- 来京东下单努比亚Flip 2享国家补助立减500元 还可享6期免息
- 致敬!消防员救完人 汗水冒白烟
- OPPO Find N5折叠屏手机发布会定档2月20日:“钛薄了,太强了”
- 立夏后这些生肖财运来临!横财挡不住!
- 《优米雅的炼金工房》试玩陈述:不一样的调合魅力
- 多赚点钱吧,因为活着很贵
- Google Gemini 运用为 iPhone 用户带
- 一再拒绝组织挽救的秘书长被双开 曾任西安副市长
- 小米模块化镜头炸场MWC:与索尼QX天壤之别,AI拍摄的未来
- 潘辰获新浪杯海外站亚军
- 微软减少数据中心方案并进步价格 用户需承担AI本钱
- 妈妈吃药后可以喂奶吗?