JavaScript Node配置 版本 api

-【 浏览器 】的JavaScript是怎样的


什么是JavaScript ?

  1. 一个脚本语言
  2. 运行在浏览器 (浏览器的js解析内核 V8)
  3. 实现用户的交互 (interactive)

变量 赋值 循环 逻辑 判断 分支 对象 函数 …

dom操作 bom操作 ajax

JavaScript 的运行环境 ?

浏览器内核解析内核 es6

  1. es6 [ EcmaScript 2016 ]
  2. const let
  3. 箭头函数
  4. this
  5. es6 解构赋值
  6. class
  7. 模块化
浏览器中的JavaScript 可以做什么 ?

  1. 用户交互
  2. pc端的网站动态效果:轮播、楼梯效果
  3. 事件绑定
浏览器中的JavaScript 不可以做什么 ?(不安全)

  1. 访问数据库
  2. 文件进行操作
  3. os x 系统进行操作
  • 不安全 浏览器运行的机制有关
在开发人员能力相同的情况下编程语言的能力取决于什么 ?

语言运行环境运行平台
cordovahbuilderplatform(运行平台)
javajava虚拟机
phpphp虚拟机
c#.netframework
js解析内核Chrome v8
node ?

  1. node js 不是因为js产生的
  2. node 选择了 js
  3. 创始人Ryan dahl
  4. 2009.2 有想法 2019.5 githup 开源 2019.11 jsconf 讲解推广node 2010年底被收购 2018年 发现bug (node工作社区回收)
  5. npm 是node.js 的包管理器
    • npm帮助node安装插件
  6. github 世界上最大的代码托管网站
    • 国内的一个代码托管平台: 码云
什么是node ?

  • Node.js 是一个基于Chrome V8 引擎的JavaScript运行环境
  • Node.js 使用了一个事件驱动、非阻塞式I/O的模型,使其轻量又高效
  1. 事件驱动
    • 事件执行
      • 任务执行
  2. 非阻塞式 I/O模型
    • 非阻塞
      • 异步
    • I/O模型
      -Input/Output 输入输出
      - 数据库操作

环境配置


Node 的安装

  1. Node version Manager (Node版本管理工具),简称nvm
  2. 会在多个Node版本中测试,Node的版本比较多,需要nvm来管理
相关版本

  1. node 版本常识
windows和linux下常用的命令行操作

  1. 切换当前目录(change directory): cd
  2. 创建目录(make directory): mkdir
  3. 查看当前目录列表(directory):dir
    - linux :ls(list)
  4. 清空当前控制台(终端):cls
    - linux :clear
  5. 删除文件 :del
    - linux :rm -r f 文件目录 /文件名
Node两种运行形式

  • REPL 终端命令运行

    1. Node全局对象 :global
      - Node 中的javascript它是没有BOM/DOM,ECMAScript有BOM / DOM
      - Node增加了一些api ,每个api都有特定的功能
      • 缺点:
        • 代码维护,更新繁琐
    2. 运行文件
      • 格式:node 文件名称 [ 可以省略后缀 ]
      • 实时监听文件的变动 [ 工具 ] / 自动刷新文件
        • nodemon [ 推荐 ]
          • 安装:$ cnpm i nodemon -g
          • 使用:nodemon 文件名
        • supervisor
          • 安装:$ cnpm i supervisor -g
          • 使用:supervisor 文件名称
常用的Node.js 的api
  1. querystring
  2. path
  3. fs
  4. http
  5. url:是Node中负责处理url字符串的
    • parse :将url字符串转成url对象
		const url = require('url')

const urlStr = 'https://s.taobao.com/search?spm=a21bo.2017.201856-fline.3.5af911d9mqRAK8&q=T%E6%81%A4&refpid=420462_1006&source=tbsy&style=grid&tab=all&pvid=d0f2ec2810bcec0d5a16d5283ce59f67'


console.log( url.parse( urlStr ) )


  Url {
    protocol: 'https:',
    slashes: true,
    auth: null, 
    host: 's.taobao.com',
    port: null,
    hostname: 's.taobao.com',
    hash: null,
    search: '?spm=a21bo.2017.201856-fline.3.5af911d9mqRAK8&q=T%E6%81%A4&refpid=420462_1006&source=tbsy&style=grid&tab=all&pvid=d0f2ec2810bcec0d5a16d5283ce59f67',
    query: 'spm=a21bo.2017.201856-fline.3.5af911d9mqRAK8&q=T%E6%81%A4&refpid=420462_1006&source=tbsy&style=grid&tab=all&pvid=d0f2ec2810bcec0d5a16d5283ce59f67',
    pathname: '/search',
    path: '/search?spm=a21bo.2017.201856-fline.3.5af911d9mqRAK8&q=T%E6%81%A4&refpid=420462_1006&source=tbsy&style=grid&tab=all&pvid=d0f2ec2810bcec0d5a16d5283ce59f67',
    href: 'https://s.taobao.com/search?spm=a21bo.2017.201856-fline.3.5af911d9mqRAK8&q=T%E6%81%A4&refpid=420462_1006&source=tbsy&style=grid&tab=all&pvid=d0f2ec2810bcec0d5a16d5283ce59f67'
  }
- format :将url对象转成url字符串
console.log( url.format({
  protocol: 'https:',
  slashes: true,
  auth: null, 
  host: 's.taobao.com',
  port: null,
  hostname: 's.taobao.com',
  hash: null,
  search: '?spm=a21bo.2017.201856-fline.3.5af911d9mqRAK8&q=T%E6%81%A4&refpid=420462_1006&source=tbsy&style=grid&tab=all&pvid=d0f2ec2810bcec0d5a16d5283ce59f67',
  query: 'spm=a21bo.2017.201856-fline.3.5af911d9mqRAK8&q=T%E6%81%A4&refpid=420462_1006&source=tbsy&style=grid&tab=all&pvid=d0f2ec2810bcec0d5a16d5283ce59f67',
  pathname: '/search',
  path: '/search?spm=a21bo.2017.201856-fline.3.5af911d9mqRAK8&q=T%E6%81%A4&refpid=420462_1006&source=tbsy&style=grid&tab=all&pvid=d0f2ec2810bcec0d5a16d5283ce59f67',
  href: 'https://s.taobao.com/search?spm=a21bo.2017.201856-fline.3.5af911d9mqRAK8&q=T%E6%81%A4&refpid=420462_1006&source=tbsy&style=grid&tab=all&pvid=d0f2ec2810bcec0d5a16d5283ce59f67'
}))
- resolve :做url替换 
const str = 'http://localhost:3000/shop/dist'

console.log(url.resolve(str, 'a'))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值