nodejs 笔记

  • 什么是REPL: Real-Eval-Print-Loop 可交互运行环境。
  • 如何进入REPL模式: node 回车即可
    • .break (或者CTRL + C)
    • .clear 清除上下文对象中保存的变量与函数
    • .save <file name>
    • .load <file name>
    • .exit (或者CTRL+C两次,或CTRL+D一次)或者 process.exit()
  • 如何进入debug模式: node debug <script file>
    • continue : cont | c
    • next: next |  n
    • step into : step | s
    • out debug: out | s
    • watch | unwatch (<expression>)
    • 其它实用命令:
      • setBreakpoint | sb ([filename], [line number])
      • clearBreakpoint | cb ([filename], [line number])
      • backtrace | bt
      • list(n) 用于指定查看当前所要执行代码前后多少行的代码
      • repl 进入REPL运行环境
      • restart 重新开始脚本调试
      • kill 终止脚本调试
      • run 在kill之后,使用run重新开始脚本调试
      • scripts 在加载一些模块后,用此查看所有被加载的模块文件名称(不包括Node.js的内置模块)
      • version 查看V8 JavaScript引擎的版本号
  • Node.js+npm安装 http://ju.outofmemory.cn/entry/40865
    • 可以从这里面找到最新的npm文件: http://nodejs.org/dist/npm/
    • 安装node-inspector命令: npm install -g node-inspector
    • 使用node-inspector首先在窗口中输入命令:  node --debug-brk[=port] <script.js>
      其次打开新的窗口输入命令:node-inspector
      最后:在浏览器中输入显示的地址进行调试。
  • Process 属性
    • execPath  
    • version
    • versions 获取Node.js 及其各依赖的版本号。
    • platform
    • stdin | stdout | stderr
    • argv 包含应用程序名(即node)及其它参数的数组。
      process.argv.forEach(function(val, index, array) {console.log(index + ‘:\t‘ +val );});
    • env
    • config 该对象包含了用于编译当前Node应用程序的可执行文件配置选项的javascript描述。
    • pid
    • title 运行node.js命令窗口的标题,可读可写。
    • arch 运行Node.js的处理器架构。如arm, ia32, x64.
  • process 方法
    • memoryUsage()
    • nextTick(callback) 用于将一字函数推迟到代码中所书写的下一个同步方法执行结束或异步方法的事件回调函数开始执行时调用。效果与setTimeout(callback, 0)类似,但性能更优。可实现对方法的递归调用。
      process.nextTick(function foo() { process.nextTick(foo); });  //注意:死循环。
    • process.exit([mode])
    • process.abort()
    • process.kill(pid, [signal])
    • process.cwd() 查看当前工作目录
    • process.chdir(<directory>) 修改当前工作目录
    • uptime() 运行时间
    • hrtime([time to diff]) 可用于测试一段代码的运行时间。值是数组,元素0单位是秒,元素1单位是纳秒。
    • uncaughtException 事件

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。