为了账号安全,请及时绑定邮箱和手机立即绑定

进击Node.js基础(一)

Scott 全栈工程师
难度中级
时长 3小时27分
学习人数
综合评分9.50
664人评价 查看评价
9.8 内容实用
9.4 简洁易懂
9.3 逻辑清晰
  • node.org
    查看全部
  • 查看全部
    0 采集 收起 来源:HTTP 源码解读

    2018-10-23

  • http知识九


    查看全部
    0 采集 收起 来源:HTTP知识先填坑

    2018-10-22

  • http知识八

    查看全部
    0 采集 收起 来源:HTTP知识先填坑

    2018-10-22

  • http知识七


    查看全部
    0 采集 收起 来源:HTTP知识先填坑

    2018-10-22

  • http知识六

    查看全部
    0 采集 收起 来源:HTTP知识先填坑

    2018-10-22

  • http知识

    查看全部
    0 采集 收起 来源:HTTP知识先填坑

    2018-10-22

    • node自带

    • querystring.stringify(a,b,c)
      将json类型的参数转换成字符串
    a:json参数
    b:键值对分隔符
    c:键值分隔符
     querystring.stringify(
    {name:'echo',
    course:['jade','node'],form:''},
    ',',':');
    运行结果:
    'name:echo,course:jade,
    course:node,form:'
    • querystring.parse(a,b,c)将字符
      串参数转换成json类型
      注:参数和上处方法类似


    查看全部
  • url.parse(a,b,c)接受三个参数

    a:一个网址

    url.parse('http://imooc.com/course/list?from=echo&num=1')

    结果如下:

    Url {

      protocol: 'http:',

      slashes: true,

      auth: null,

      host: 'imooc.com',

      port: null,

      hostname: 'imooc.com',

      hash: null,

      search: '?from=echo&num=1',

      query: 'from=echo&num=1',

      pathname: '/course/list',

      path: '/course/list?from=echo&num=1',

      href: 'http://imooc.com/course/list?from=echo&num=1' }

    b:布尔值,默认为false,为true时,可将query解析成json对象

    url.parse('http://imooc.com/course/list?from=echo&num=1',true)

    结果如下:

    Url {

      protocol: 'http:',

      slashes: true,

      auth: null,

      host: 'imooc.com',

      port: null,

      hostname: 'imooc.com',

      hash: null,

      search: '?from=echo&num=1',

      query: { from: 'echo', num: '1' },

      pathname: '/course/list',

      path: '/course/list?from=echo&num=1',

      href: 'http://imooc.com/course/list?from=echo&num=1' }

    c:默认为false,为true时,可解析不知协议的URL

    如:

    url.parse('//imooc.com/course/list',true,true)

    结果如下:

    Url {

      protocol: null,

      slashes: true,

      auth: null,

      host: 'imooc.com',

      port: null,

      hostname: 'imooc.com',

      hash: null,

      search: null,

      query: {},

      pathname: '/course/list',

      path: '/course/list',

      href: '//imooc.com/course/list' }


    查看全部
  • 模块的流程

    查看全部
  • 模块的分类

    查看全部
    0 采集 收起 来源:模块的分类

    2018-10-22

  • @url网址解析:

    【url与uri】

    >uri:Uniform Resource Identifier,统一资源标识符,字符串格式规范

    >url:Uniform Resource Locator,统一资源定位符

    url是uri的子集,url肯定是uri,uri不一定是url。

    【parse format reslove】

    >url.parse():将url字符串转化为url对象

    eg:url.parse('https://www.imooc.com:8080/video/6710?from=scott&course=node#floor1')

    url.parse('//imooc.com/video/6710/0',true,true)--第一个true时,query被转换为一个对象 

    url.parse('https://www.imooc.com:8080/video/6710?from=scott&course=node#floor1')              ==>
     query: 'from=scott&course=node',  ==> query: { from: 'scott', course: 'node' },

    >url.format():将url对象格式化为url字符串

    eg:url.format({protocol: 'https:',})
    >url.resolve():用于解析,接受两个参数拼接
    eg:url.resolve('https://www.imooc.com/','/video/6710/0')

    Url {
      protocol: 'https:',  //协议
      slashes: true,  //是否有协议的双斜线
      auth: null, 
      host: 'www.imooc.com',  //服务器iip地址 
      port: null, //端口
      hostname: 'www.imooc.com',
      hash: null,  //哈希值
      search: null, //查询字符串参数
      query: null,  //发送给服务器的数据
      pathname: '/video/6710/0',
      path: '/video/6710/0', 
      href: 'https://www.imooc.com/video/6710/0' }



    查看全部
  • nodejs实现高并发、大规模的运行特性

    nodejs.api文档中文版http://nodejs.cn/api/

    查看全部
  • @模块分类:

    >核心模块:http fs path..

    >文件/本地模块:var util=require('./util.js')

    >npm第三方模块:var promise=require('bluebird')

    模块的引用>>路径引用 模块名引用(最终也会被映射为路径)

    包含核心函数的核心模块会在node启动时被预先加载,非核心及第三方模块在之后加载


    NodeJs文件和模块一对一对应关系

    查看全部
    0 采集 收起 来源:模块的分类

    2018-10-21

  • CommonJs规范可参考:http://javascript.ruanyifeng.com/nodejs/module.html

    @模块与包管理工具
    js的天生缺陷——缺少模块化管理机制
    ·表现>> JS中容易出现变量被覆盖,方法被替代的情况(既被污染)。特别是存在依赖关系时,容易出现错误。这是因为JS缺少模块管理机制,来隔离实现各种不同功能的JS判断,避免它们相互污染。
    ·解决>> 经常采用命名空间的方式,把变量和函数限制在某个特定的作用域内,人肉约定一套命名规范来限制代码,保证代码安全运行。jQuery中有许多变量和方法,但是无法直接访问,必须通过jQuery,$调用 各个方法。
    【Commonjs规范】
    不同于jQuery,Commonjs是一套规范,约定了js如何组织,如何编写,包括包,二进制,套接字,单元测试等等。大部分标准在拟定和讨论之中,首先把执行不同任务的代码块和代码文件看为独立的模块,每一个模块都是一个单独的作用域,但不是孤立的,可能存在依赖关系。每个模块分为三个部分,定义、标识和引用。这套规范与现实产品如node.js相互影响,良性循环。
    【NodeJs的模块管理机制】
    基于commonjs实现了模块管理系统。node中每一个js文件都是一个独立的模块,在其内部不需要有命名空间,不需要担心变量的污染和方法定义时的隔离。同时模块之间可以组合形成更强大的模块或功能包。npm即是用来管理各种功能包的。 

    查看全部

举报

0/150
提交
取消
课程须知
我们的教程面向的同学是:有 JavaScript 基础的同学,如果有过任何后台语言开发的经验更适合,对于有基础的同学,可以快进跳着看教程,不必拘束于每一分钟都听,很多时候其实是思路,思路打通了,很多技术细节也就不用纠结了。
老师告诉你能学到什么?
从 Node.js 基础知识入手,比如安装,环境配置、开发环境等,进一步熟悉 Node.js API ,一些 HTTP 知识,并且对模块的概念和使用更加熟悉,从而进阶到模块或者插件的开发,最终能够借助 Node.js 快速实现特定的需求。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!