• node.js 学习01


    PHP开发技术栈(LAMP) Linux  Apache  MySql  PHP
    node.js 全栈开发技术栈(MEAN): MongoDB  Express  Angular  Node.js


    现阶段学习的目标:

    • 了解服务器开发过程
    • 会使用node.js 开发基本的 http 服务程序(web应用程序)

    node.js

    特点:
    1. 事件驱动(当事件被触发时,执行传递过去的回调函数)
    2. 非阻塞I/O模型(当执行I/O操作时,不会阻塞线程)
    3. 单线程


    一个新 get 的概念:(你啥也没看见⁄ (⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄ )

      配置环境变量的意义:当在控制台输入命令时,如果输入的不在当前目录下,这时候如果设置了环境变量,那么系统就会在环境变量中
    挨个寻找输入的命令所在的文件夹,直到找到相应的路径。


    使用node.js开发网站与传统开发网站的区别:

    传统网站:需要web容器

    node.js 进行开发:不需要web容器,因为node.js本身就是一个web服务器


    node 的版本管理器 nvm

    下载nvm的地址:https://github.com/coreybutler/nvm-windows/releases

    nvm 用来管理一台计算机上的多个node版本

    • nvm list 打星号表示当前正在使用的
    • nvm using node v8.4.0
    • nvm install latest
    • nvm install 版本号
    • nvm uninstall 版本号

    退出node环境
    1. .exit
    2. 按住Ctrl键,按两下C键


    一段js代码,写入文件操作

    //写入文件操作
    let fs = require('fs');
    let msg = 'Hello World!';
    console.log('000')
    fs.writeFile('./hello.txt',msg,'utf8',function(err){
       console.log('111')
    // 如果err===null 表示写入成功 if(err){ console.log('写入文件失败'); }else{ console.log('写入文件成功!'); } });
    console.log('222')

    可以注意到上面使用到了require( )函数,require( )函数的作用就是加载 fs 模块

    而另一个process模块(举个栗子)使用时无需通过require() 函数来加载

    原因:process模块是全局的模块,fs不是全局模块,全局模块可以直接使用
    非全局模块需要require( )函数加载


    判断需不需要require( )函数加载
    1.直接打开node文档查看相应的函数
    2. 文档左边栏有Globals 模块,可以直接查看

      另外,在上面的代码中,有几个输出数字的console.log(),那么输出的顺序是什么呢?

      答案是 000  222  111

      这样输出的原因就是上面的  writeFile( ) 函数是异步执行的,不会等写入完毕就运行了后面代码

     
  • 相关阅读:
    【javascript基础】cc_on的详解
    【css】怪异模式下的盒模型
    【javascript基础】javascript对象的expando属性
    【javascript基础】之深度克隆(深度拷贝)一个对象
    【javascript基础】toString、valueOf、转换 【译】
    【c++】C++ system函数用法
    【javascript基础】toString valueOf toLocaleString的具体区别
    【javascript基础】Nicholas C. Zakas如何面试前端工程师
    【浏览器兼容性】script的type为text/tpl,写入html IE6,7,8下报错
    从写组件说Xml——背景篇(零)
  • 原文地址:https://www.cnblogs.com/codeofmine/p/9446347.html
Copyright © 2020-2023  润新知