nodejs项目初始化

  1. 创建目录 mkdir nodejs & cd nodejs

  2. npm init (根据提示,或者一路回车即可)

  3. 创建server.js文件,并写入以下内容

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    // 内置组件  
    var http=require("http");

    http.createServer(function(request, response){
    // 发送 HTTP 头部
    // HTTP 状态值: 200 : OK
    // 内容类型: text/plain
    response.writeHead(200, {"Content-Type":"text/plain"});

    //响应数据
    response.end("hello nodejs");
    }).listen(8888);
    //服务启动成功后输出日志
    console.log('Server running at http://127.0.0.1:8888/');
  4. node server.js 启动成功

  5. 浏览器访问 127.0.0.1:8888

npm使用(root)

搜索

  • npm search

更新

  • npm install -g npm

  • npm update -g npm

安装卸载模块

  • 当前目录
    npm install
    npm uninstall

  • 全局
    npm install -g
    npm uninstall -g

查看模块安装信息

  • 一个
    npm list -g

  • 所有
    npm list

Package.json属性说明

1
2
3
4
5
6
7
8
9
10
name - 包名。
version - 包的版本号。
description - 包的描述。
homepage - 包的官网 url 。
author - 包的作者姓名。
contributors - 包的其他贡献者姓名。
dependencies - 依赖包列表。如果依赖包没有安装,npm 会自动将依赖包安装在 node_module 目录下。
repository - 包代码存放的地方的类型,可以是 git 或 svn,git 可在 Github 上。
main - main 字段指定了程序的主入口文件,require('moduleName') 就会加载这个文件。这个字段的默认值是模块根目录下面的 index.js。
keywords - 关键字

whatis npm

  1. npm就是js下的maven, 支持包依赖, 执行等
  2. package.json == pom.xml

var 和 const

初始化buffer

  • 类似于初始化一个list
  • Buffer.alloc(5)

nodejs对标的是其他的后端语言类似java

require的执行流程

  1. 如果 X 是内置模块
  2. 返回内置模块
  3. 停止执行
  4. 如果 X 以 ‘/‘ 开头
    1. 设置 Y 为文件根路径
  5. 如果 X 以 ‘./‘ 或 ‘/‘ or ‘../‘ 开头
    1. LOAD_AS_FILE(Y + X)
    2. LOAD_AS_DIRECTORY(Y + X)
  6. LOAD_NODE_MODULES(X, dirname(Y))
  7. 抛出异常 “not found”

extend

Sub 仅仅继承了Base 在原型中定义的函数,而构造函数内部创造的 base 属 性和 sayHello 函数都没有被 Sub 继承。

总结

如果有一定变成基础,nodejs还是很easy的, 例子6一下就可以, 入门容易,用好就需要code code code!

  1. everything 搜索神器, 强烈推荐
  2. faststone capture 红绿小工具,工具小功能强
  3. clcl 复制粘贴神器
  4. f.lux linux和windows都用,自动根据经纬度调整屏幕亮度
  5. launchy 运行软件(可以自己将软件的快捷方式起别名放入一个目录,该软件引用,很爽)
  6. 自己编写的一些 bat小工具 自动化
  7. 远程工具 anydesk teamview
  8. zeal 文档阅读器
  9. itellij idea java开发工具
    插件推荐: vim plantuml(这个玩意儿依赖于一个小软件(graphviz), 需要单独装)、 jprofiler(需要配套对应的软件, 用来查看系统耗时,作为调节性能的依据)
  10. 软媒魔方 偶尔用用 更新软件了什么的, 现在随便找个软件管理什么的,可以省下满世间找软件的尴尬
  11. unlocker 文件诡异的锁住了,用这个解锁,随便搞
  12. ccleaner 电脑清理的,不知道为啥一直用着
  13. beyond compare 文件比较软件
  14. rescue time 有兴趣可以看看, 这个是记录你一天在干嘛的软件
  15. gvim 文本编辑器 我一般只用这个和notepad++
  16. scoop命令行下的包管理器,软件有点少但是社区还是很给力的, 建议添加extral包
  1. dism++ 垃圾清理, 备份还原,等。
  2. spacesniffer 无需安装,分析磁盘,清理文件
  3. 独立版本qq软件管理

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
$ hexo deploy

More info: Deployment

0%