广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >初探nodeJS
  • 132
分享到

初探nodeJS

nodeJS 2022-06-04 17:06:22 132人浏览 安东尼
摘要

一、node概要 对nodeJS早有耳闻,但是一直迟迟没有对它下手,哈哈哈,今儿咱就来初探一下它。 nodejs是个啥东东? nodejs,我的理解就是可以运行在后端的javascript。 为什么它能够在

一、node概要

nodeJS早有耳闻,但是一直迟迟没有对它下手,哈哈哈,今儿咱就来初探一下它。

nodejs是个啥东东?

nodejs,我的理解就是可以运行在后端javascript

为什么它能够在后端运行呢?

这就得归功于V8引擎(V8是Google Chrome浏览器的JavaScript引擎),通过对高性能V8引擎的封装,并通过一系列优化api类库,使其就能够在后端运行了。

并且node有两大特点:

 1、基于事件驱动;

 2、无阻塞。

从而nodeJS非常适合处理并发请求。

大家都知道nodeJS其本质就是JavaScript,so基于事件驱动不难理解,但是无阻塞呢?

JavaScript是单线程,所以要做到无阻塞,node是通过大量的回调函数来达到这一目的。

好了,废话不多说了。接下来咱们就开始初步体验它。

二、Install node&npm

因为nodeJS是后端运行的JavaScript嘛,so得有个运行环境啊。不过安装nodeJS的环境比较简单,具体步骤见下:

1、首先到官网下载nodeJS安装包。

在官网中,也能看见官方对nodeJS的一个描述:

Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine.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.

2、在下载完安装包后,在windows下按照默认程序走就欧克啦。

3、检验是否安装成功,在Windows环境下,打开命令提示符,输入node ? v,如果正常就会出现版本号的输出。

如下:

查看图片

在官方介绍中,不是说到npm(node.js' package ecosystem, npm , is the largest ecosystem of open source libraries in the world.)嘛,其实npm在你安装nodeJS时,就一带帮你安装了。

不信,咱就在命令提示符中输入npm ?v看看。

如下:

查看图片

好了,node开发环境就这么完美的‘搭建'好了,哈哈,是不是很简单。

接下来,我们就开始敲打第一个node程序吧。

三、Get started

一切从"hello world"开始,毕竟我们都是有情怀的人。

简单的嘛,我们就在命令提示符下,敲打我们的程序,你只需输入node,然后回车就可以进入node在命令提示符下的交互环境了。

如下:

查看图片

进入node交互环境后,敲到"hello world"字符串后回车。

结果如下:

查看图片

倘若我们想退出node的这个交互环境,就Ctrl + C,连按两次就退出回到windows命令符啦。

如下:

查看图片

如果要在node的这个交互环境下编程的话,太大费周章了,所以,我们可以引入js文件来执行,例如下面这样。

前提:你得有一个js文件。

我将这个js(helloWorld.js)文件放在D盘的,so运行结果如下:


'use strict'
console.log('Hello world');

查看图片

哈,有点意思哈。

不是说nodeJS是运行在后端的JavaScript嘛。接下来,我们就用nodeJS来开发一个最简单的服务器程序。

四、Node for server

前提:nodeJS是遵循CommonJS规范的。

即,

每个.js文件都是一个模块,模块的好处就是避免命名空间污染。倘若你想让一个模块对外暴露变量,可以用module.exports = variable;

而一个模块想要引用另一个模块对外暴露的变量,用require关键字就可以了,如var ref = require(‘module_name');

好了,简单的知道了nodeJS的运用规则,那么我们想要编写一个Http服务器,就得先引入这个模块。

如下:

查看图片

接下来就是调用引入的HTTP模块的一个工厂模式方法(createServer)来创建一个新的http服务器。

如下:

查看图片

由于nodeJS的特性之一是事件驱动,so当我们访问一个http服务器时,它会触发一个request事件,我们利用其进行相应处理。

例如,我们的处理方式是,利用writeHead来设置HTTP的响应头和HTTP正文。

具体代码如下:

查看图片

最后,就是想监听的端口号咯。比如我们监听的是80端口。

查看图片

代码以及很完美了,但,为了方便在nodeJS交互环境下运行该js文件后,知道服务器已经启好了,我们还是打印一条日志吧。

如下:

查看图片


'use strict'
//通过require将http库包含到程序中
var http = require('http');
//创建新的HTTP服务器
var server = http.createServer();
//通过request事件来响应request请求
server.on('request',function(req, res){
  res.writeHead(200, {'Content-Type':'text/plain'});
  res.end('Hell Worldn');  
});
server.listen('80');
console.log('Server running!');
EntireCode

好了,开启nodeJS交互环境,运行该js文件,我的命名是http.js。

so:

查看图片

这样http服务器就启好了,接下来我们再打开网页,输入127.0.0.1:80,看看效果:

查看图片

good!!有木有一点小小的激动,这样就把http服务器启好并运行起来了。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持编程网!

--结束END--

本文标题: 初探nodeJS

本文链接: https://www.lsjlt.com/news/12833.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 初探nodeJS
    一、node概要 对nodeJS早有耳闻,但是一直迟迟没有对它下手,哈哈哈,今儿咱就来初探一下它。 nodeJS是个啥东东? nodeJS,我的理解就是可以运行在后端的JavaScript。 为什么它能够在...
    99+
    2022-06-04
    nodeJS
  • 进阶之初探nodeJS
    一、前言 在"初探nodeJS"随笔中,我们对于node有了一个大致地了解,并在最后也通过一个示例,了解了如何快速地开启一个简单的服务器。 今儿,再次看了该篇随笔,发现该随笔理论知识稍多,适合初级入门nod...
    99+
    2022-06-04
    进阶 nodeJS
  • 初始Nodejs
    基本概念 Node.js,或者 Node,是一个可以让 JavaScript 运行在服务器端的平台。可以说,Node.js开创了javascript模块化开发的先河,早期的javascript需求都很简单,...
    99+
    2022-06-04
    Nodejs
  • selenium 初探
    1 # -*- coding:utf-8 -*- 2 3 from selenium import webdriver 4 driver = webdriver.Firefox() # 打开firefox浏览器 5 driver.g...
    99+
    2023-01-30
    selenium
  • Python 初探
     按照计划,今年要学习一门面向对象的语言,学习的范围锁定几门,PHP/PERL/PYTHON/RUBY,由于上半年学了bash,感觉python比较适合自己。从今天开始不定期的出一些笔记出来 #! /usr/bin/python   ID...
    99+
    2023-01-31
    Python
  • PostgreSQL 初探
    2020 年 2月的总排名为第四名,关系型数据库中排名第四名。排名信息参考:DB-Engines 为了更好地应用的工作中,针对 PostgreSQL 给我造成的疑惑整理了如下内容: (1) PostgreSQL 版本之间的...
    99+
    2019-11-15
    PostgreSQL 初探
  • Redis初探
       大概在2010年的时候,有一次和一个同事聊天,那个时候知道了Redis,对于技术的追随至今,还没有下载一个Redis版本玩玩,   只有1万多行代码,以性能惊人...
    99+
    2022-10-18
  • AS3初探
    开发工具:FLEX BUILDER3 PRO   语言:AS 3.0   操作系统:Windows XP SP2   1.       在flex3 里新建一个AS工程取名为lo...
    99+
    2023-01-31
  • Android Context初探
    1.背景 作为一个Android新手,每次看到使用Context作为参数时,都有点焦虑,有时候传this就可以,有时候又不行,不知道为什么可以,...
    99+
    2022-06-06
    context Android
  • Oracle Wallet初探
    Oracle Wallet初探1.  什么是WalletA datastructure used to store and manage security credentials for...
    99+
    2022-10-18
  • ORM初探(一)
    Object Relational Mapping(ORM): 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描...
    99+
    2023-01-31
    ORM
  • 1、python-初探
    语言包括编译型语言和解释型语言编译型:全部翻译,再执行;c、c++解释型:边执行边翻译;python、php、java、c#、perl、ruby、javascript 一、系统位数32位系统内存的最大寻址空间位2**32,4GB64位系统...
    99+
    2023-01-31
    python
  • Python Metaclass 初探
    先以一个大牛的一段关于Python Metapgramming的著名的话来做开头: Metaclasses are deeper magic than 99% of users should ever worry about. If yo...
    99+
    2023-01-31
    Python Metaclass
  • python unittest初探
    待测试的类:class Request:    url = ""    method = ""    paras = {}    def __init__(self,url):        self.url = url        se...
    99+
    2023-01-31
    python unittest
  • Javascript之JSBridge初探
    目录JSBridge 的起源JSBridge 的双向通信原理JS 调用 NativeNative 调用 JSJSBridge 的使用总结JSBridge 的起源 近些年,移动端普及化...
    99+
    2022-11-12
  • python与mongodb初探
    python连接mongodb:这个需要安装一个pymongo包。不知道是什么原因我安装不上去,总是提示我找不到安装的python后来安装了pycharm借助这个IDE安装上了pymongo然后就是在pyc...
    99+
    2022-10-18
  • RN 技术探索:Hermes Engine 初探
    桔妹导读:自从 Google 的 Flutter 发布之后,Facebook 对 React-Native 的迭代开始快了起来,优化 React-Native 的性能表现,避免被 Flutter 比下去。最近一个比较大的动作是开源了一个 J...
    99+
    2023-06-03
  • nodejs初步体验篇
    前言:写这篇文章的由来:   1.前段时间单位有新项目启动,服务端要做的工作不多也不算麻烦,就是处理一些中间层的服务,而且我们团队里面个个都会JavaScript,领导就决定试试服务器端的JavaScrip...
    99+
    2022-06-04
    nodejs
  • python之初探编程
        接触python语言完全是个偶然。那时候还在一所培训学校里学习网络和系统,和朋友一起去图书馆淘书,转遍了整个楼层,只是找到了一两本感兴趣的计算机方面的书,朋友选的很快,开始催我回去了,真是纠结,拿着借阅卡一次可以借5本,图书馆也挺远...
    99+
    2023-01-31
    python
  • 初探 Windows 7 M3 Buil
    通过 VPC 体验 Windows 7 M3By Windows 7 M3 Build 6801        前面我就从当前系统以升级方式来安装 Windows 7 M3 Build 6801.0.080913-2030(以下简称:Win...
    99+
    2023-01-31
    Windows Buil
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作