nodejs的基础详情与安装

  • 时间:2018-06-17 21:02 作者:小菜鸟学前端 来源:小菜鸟学前端 阅读:94
  • 扫一扫,手机访问
摘要:引子前台其实只有三种技术:html,css,js后台有很多技术:java,php,python,Ruby(github 就是ruby做的),.net…….node.js(我们选择的),但凡可以使用JS可以实现的,最终都会使用js实现其实他们都能实现相同的功可以node.js是什么?他不是什么:· 不

引子

前台其实只有三种技术:

html,css,js

后台有很多技术:

java,php,python,Ruby(github 就是ruby做的),.net…….

node.js(我们选择的),

但凡可以使用JS可以实现的,最终都会使用js实现

其实他们都能实现相同的功可以

node.js是什么?

他不是什么:

· 不是一个语言

· 不是库

· 不是框架

浏览器中的Javascript

nodejs的基础详情与安装

ecmascrpt:

· 基本的语法

· if

· var

· funciton

· ….

bom

浏览器对象模型

dom

文档对象模型

node.js中的javascript

没有bom.dom :不解决页面的

在node.js这个运行环境中为javascript提供了少量服务器级别的api

· 文件的读写

网络服务的构建

网络通信

http服务等

….

官网源说明

· Node.js? is a JavaScript runtime(运行时) built on Chrome’s V8 JavaScript engine.(它能解析执行Js,以前只有浏览器能解析执行js,能说是一个运行环境,构建于chrome的V8

· Node.js uses an event-driven(事件驱动), non-blocking(非阻塞,简单来讲就是异步操作) I/O model that makes it lightweight and efficient.

· Node.js’ package ecosystem, npm, is the largest ecosystem of open source libraries in the world. (源自官网)(npm是基于nodejs开发的包管理工具)

绝大多数的javascript包都存放在了npm上,目的是让开发人员更方便的用

nodejs的基础详情与安装

node.js详情

可以做什么?

· web服务器后端

· 命令行工具

npm(基于node开发的)

git(c语言开发的)

hexo

….

对于前台开发工程师来讲,我们接触node 最多的其实是它的命令行工具

自己写的很少,大多是使用第三方的

webpack

gulp

npm

hexo

预备知识

简单的命令行操作

cd

dir

is

mkdir

rm

推荐的书籍

《深入浅出node.js》:纯理论,纯底层,能帮助了解底层(不推新手阶段看)

《node.js权威指南》:API讲解,没有实战,没有业务,偏理论

《node入门》很重要,要看

node.js官方API

node.js中文社区:

《JavaScript 高级编程》第三版

《JavaScript 语言精粹》

可以学到啥?

b/s编程模型:

browser-server

back-end

任何服务端技术 B/S 编程模型都是一样的.和语言无管。就只是语言和api不同

板块化编程:

requireJs

SeaJs

以前认知的js只可以通过script标签加载,在node中能像@import一样引使用加载JS脚本文件

nodejs的基础详情与安装

node.js常使用的API

异步编程

回调函数

promise

async

generator

express web 开发框架

ecmascript6

一个新语法而已

安装node环境

重新安装就会覆盖更新

确定node能否安装成功:

cmd->node --version

node 中的JavaScript

1.emcaScript

没有dom 和 bom

2.核心板块

node为JavaScript提供了很多服务器级别的API,这些API绝大多数都被包装到一个具名的核心板块中去了

例如:文件操作的fs板块,http服务构建的http板块,path路径操作板块,os操作系统信息获取……核心板块想要用需要引使用。require就是使用来加载板块的

require

require 是一个方法,他的作使用就是来加载板块并执行里面代码,在node中,板块有三种

具名的核心板块,例如:fs,http

使用户自己编写的:就是自己写的js文件,相对路径必需加./,由于去了之后,node会把路径当做核心板块

require('./b.js')//.js的后缀名能省略

在node中没有全局作使用域,只有板块作使用域

不同文件之间不会互相影响,就算调使用,外部访问不到内部,内部也访问不到外部

3.第三方板块(也能是使用户自己设置板块)

要想访问到, 能使用以下方法:

每个板块(文件)都有一个exports对象,要想让这个文件中的元素被外界访问到,就需要把元素挂在到exports对象中。

require有两个作使用:

1.加载板块文件并执行

2.拿到exports这个接口对象

IP和端口号

ip:一台计算机只有一个物理网卡,在同一个局域网中,IP地址必需是唯一的。网卡是通过IP地址来进行定位的。

IP地址使用来定位计算机。端口使用来定位计算机中的软件。

能同时开启多个服务,但是肯定要确定占使用的端口号不一样(计算机中,同一个端口号,同一时间,只可以被一个程序占使用)

响应内容类型(Concent-Type)

nodejs的基础详情与安装

中文乱码问题

在服务器默认发送的数据,UTF8编码的内容,但是浏览器不知道我们是UTF8编码的内容,会按照计算机默认的操作系统去解析(中文操作系统时GBK编码)

处理方法:正确的告诉浏览器,我给你发送的内容是什么编码的

res.setHeader(‘Content-Type’,’text/plain;charset:utf-8’)

要想让浏览器按照肯定方式去渲染代码,concent-type应有不同的形式:

text/html,text/plain

后记:对于大部分转行的人来说,找机会把自己的基础知识补齐,边工作边补基础知识,真心很重要。

我们相信人人都能成为一个IT大神,现在开始,选择一条阳光大道,助你入门,学习的路上不再迷茫。这里是北京尚学堂,初学者转行到IT行业的聚集地。"

  • 全部评论(0)
最新发布的资讯信息
【系统环境|服务器应用】PHP和Python实战bcrypt算法(2019-02-01 20:47)
【系统环境|服务器应用】PostgreSQL数据库安装Version10.5(2019-02-01 20:47)
【系统环境|服务器应用】Notepad++快速选中多行(2019-02-01 20:47)
【系统环境|服务器应用】Clover支持目录多标签页(2019-02-01 20:47)
【系统环境|服务器应用】计算机视觉 OpenCV Android | Mat像素操作(2019-02-01 20:46)
【系统环境|服务器应用】PHP | 运算符 知识梳理与运用实例(2019-02-01 20:46)
【系统环境|服务器应用】人工智能通识-数学-零基础矩阵运算(2019-02-01 20:46)
【系统环境|服务器应用】Android-打包AAR步骤以及最为关键的注意事项!(2019-02-01 20:46)
【系统环境|服务器应用】回转寿司你肯定吃过!——Android消息机制(构造)(2019-02-01 20:46)
【系统环境|服务器应用】Android中不规则形状View的布局实现(2019-02-01 20:46)
手机二维码手机访问领取大礼包
返回顶部