Node能做什么?Node.js命令常用有哪些?

文章编号:1047 最新资讯 2024-03-07 node能做什么 node.js命令

Node.js 诞生于2009年,比 JavaScript 晚15年。在 Node.js 之前,JavaScript 只能在浏览器中运行,作为网页脚本使用,为网页添加特殊效果或与服务器通信。有了 Node.js,JavaScript 可以脱离浏览器,像其他编程语言一样直接在电脑上使用,不再受浏览器的限制。本文跟大家分享Node能做什么?Node.js命令常用有哪些? Node能做什么 一、Node.js 是什么? Node.js 不是一门新的编程语言,也不是一个 JavaScript 框架,它是一套基于 Chrome V8 引擎的 JavaScript 运行环境,使用了一个事件驱动、非阻塞式I/O模型, 让 JavaScript 运行在服务端的开发平台,用来支持 JavaScript 代码的执行。用编程术语来讲,Node.js 是一个 JavaScript 运行时(Runtime)。它让JavaScript成为与PHP、Python、Perl、Ruby等服务端语言平起平坐的脚本语言。Node.js基于Javascript 语言,Javascript 在 Web 前端开发中至关重要,特别 HTML5 的应用必须要使用,所以前后台统一语言,不仅可以实现程序员的全栈开发,还可以统一公共类库,代码标准化。Node.js的开发非常高效,而且代码简单,这得益于 Node 的单线程机制。而 Node.js 的另一个特点异步编程,让 Node 处理IO密集型应用有了明显的优势。 二、运行时是什么? 所谓运行时,就是程序在运行期间需要依赖的一系列组件或者工具。把这些工具和组件打包在一起提供给程序员,程序员就能运行自己编写的代码了。对于 JavaScript 来说,它在运行期间需要依赖以下组件:JavaScript 是一种脚本语言,需要一边解释一边运行,用到哪些源代码就编译哪些源代码,整个过程由解释器完成。没有解释器的话,JavaScript 只是一堆纯文本文件,不能被计算机识别。我们在 JavaScript 代码中会调用一些内置函数,这些函数不是我们自己编写的,而是标准库自带的。所谓本地模块,就是已经被提前编译好的模块,它们是二进制文件,和可执行文件在内部结构上没有什么区别,只是不能单独运行而已。这些本地模块其实就是动态链接库(在 Windows 下是 .dll 文件),如果你使用过C语言、C++ 等编译型语言,那你应该能够更好地理解它。 三、服务器端的 JavaScript 是什么? 大多数 Web 开发人员都熟悉于使用 JavaScript 操纵浏览器中的 Web 页面并与之交互。这就是通常所称的客户端 JavaScript,因为它发生在浏览器或者客户端。服务器端 JavaScript 发生在把页面发送给浏览器之前的服务器上。当然,使用的是同样的语言。 四、Node能做什么? Node.js 能做的远不止开发一个网站那么简单,使用 Node.js,你可以轻松做这些应用:Node.js 的优势主要在于事件循环,非阻塞异步 I/O,只开一个线程,不会每个请求过来都去创建一个线程,从而产生资源开销。通常我们可以使用 Node.js 来做为中间层,负责组装数据提供 API 接口给到前端调用,这些数据源可能来自第三方接口或者数据库,例如,以前可能我们通过后端 Java、PHP 等其它语言来做,现在我们前端工程师通过 Node.js 即可完成,后端则可以更专注于业务开发。RPC(Remote Procedure Call),即远程过程调用,也许你对它很陌生,但是在当今微服务模式下,我们可能是针对功能或者具体的业务形态进行服务化,那么服务之间的通信一种常见的模式通过 HTTP 来实现,了解网络模型的同学可能知道,HTTP 属于应用层协议,在这之下就是传输层,显然以 TCP 形式是很有优势的,RPC 服务也就是采用的 TCP,现在出名的 RPC 服务例如,Google 的 gRPC、阿里的 Dubbo。可以作为基础工具,前端领域中的编译器、构建工具、搭建脚手架等。比较出名的例如 Webpack、Gulp 都是很成功的。Nodeclub 是使用 Node.js 和 MongoDB 开发的社区系统,界面优雅,功能丰富,小巧迅速,可以用它搭建自己的社区。Backend For Frontend,简称 BFF,服务于前端的后端,并非是一种新技术只是一种逻辑上的分层,在这一层我们可以做一些资源的整合,例如:原先前端需要从三个不同的地方来获取资源,那么,有了这一层之后,我们是不是可以做个聚合,统一处理之后返回给前端,同时也不授后端系统的变迁,导致也要去更改。这将是未来经常会听到的一个词,ServerLess 是一种 “无服务器架构”,它不需要开发者去关心运维、流量处理这些工作,开发者则可以更关注于业务本身。函数即服务,那么写一个函数就可以实现一个 API 接口给到前端,显然对开发工作是减轻了很多,在 JavaScript 中函数则是一等一的公民,在 ServerLess 这一场景下 Node.js 本身也很轻量级,还是拥有着很大的优势。 Node.js命令 五、Node.js命令常用有哪些? 这是 Node.js 中 npm 常用命令,npm 是一个 Node 包管理和分发工具,已经成为了非官方的发布 Node 模块(包)的标准。有了 npm,可以很快的找到特定服务要使用的包,进行下载、安装以及管理已经安装的包。npm install xxx(利用 npm 安装xxx模块到当前命令行所在目录)npm install -g xxx(利用npm安装全局模块xxx)复制代码本地安装时将模块写入 package.json 中:npm install xxx(安装但不写入package.json)npm install xxx –-save/-S(安装并写入package.json的”dependencies”中)npm install xxx -–save-dev/-D(安装并写入package.json的”devDependencies”中)npm uninstall xxx(删除xxx模块)npm uninstall -g xxx(删除全局模块xxx) 3、查看全局的包的安装路径 npm root -gnpm -v:npm update moduleName会引导你创建一个 package.json 文件,包括名称、版本、作者这些信息等,一直回车就行。npm init 7、查看当前包的安装路径 npm root如果想要查看 package.json 文件夹下某个标签的内容,可以使用$npm view moduleName labelNamenpm view moduleNames 9、查看当前目录下已安装的 Node 包 注意事项:Node 模块搜索是从代码执行的当前目录开始的,搜索结果取决于当前使用的目录中的 node_modules 下的内容。$ npm listnpm list:(parseable=true可以目录的形式来展现当前安装的所有node包)npm helpnpm view moudleName dependenciesnpm view moduleName repository.url 13、查看包所依赖的 Node 的版本 npm view moduleName engines 14、查看 npm 使用的所有文件夹 npm help folders 15、用于更改包内容后进行重建 npm rebuild moduleName:npm outdated(此命令会列出所有已经过时的包,可以及时进行包的更新)一个 npm 包是包含了 package.json 的文件夹,package.json 描述了这个文件夹的结构。访问 npm 的 json 文件夹的方法如下:$ npm help json(此命令会以默认方式打开网页,如果更改了默认打开程序则可能不会以网页的形式打开) 18、检验某个包名是否已存在 $ npm search packageName(发布一个 npm 包的时候,需要检验某个包名是否已存在)以上是Node能做什么以及Node.js常用命令介绍。总的来说,Node.js 是个程序设计平台,只要有想法和足够的编程技艺,它就无所不能。从 Node.js 官方网站的企业登记页得知,包括我们熟知的公司如LinkedIn、Yahoo、Paypal、eBay、Walmart、Groupon等很多的中小型公司,国内的公司如雪球、淘宝、网易、百度等也有很多项目运行在 Node.js 之上。这些公司不仅是尝试在用,而且都在向 Node.js 迁移。


前端用nodejs能做什么

到底是什么?是一个JavaScript的编译环境,当前端语言JavaScript在写完之后可以交给进行编译和解释,它的存在对于JavaScript有了质的飞跃。 下面就是一个简单的命令#node 目前,在大部分领域都占有一席之地,尤其是I/O密集型的。 比如Web开发,微服务,前端构建等。 不少大型网站都是使用 作为后台开发语言的,用的最多的就是使用做前端渲染和架构优化,比如 淘宝 双十一、去哪儿网 的 PC 端核心业务等。 另外,有不少知名的前端库也是使用 开发的,如Webpack是一个强大的打包器,React/Vue 是成熟的前端组件化框架。 通常被用来开发低延迟的网络应用,也就是那些需要在服务器端环境和前端实时收集和交换数据的应用(API、即时聊天、微服务)。 阿里巴巴、腾讯、Qunar、网络、PayPal、道琼斯、沃尔玛和 LinkedIn 都采用了 框架搭建应用。 另外, 编写的包管理器npm已成为开源包管理了领域最好的生态,直接到2017年10月份,有模块超过47万,每周下载量超过32亿次,每个月有超过700万开发者使用npm。 是一个对于前端工作者不可或缺的工具。 尤其是对于JavaScript有着巨大的提升,现阶段的应用已经有了非常蓬勃的发展。 对于的学习和熟练运用,必不可少!

如何快速使用node.js进行web开发

本篇文章主要介绍了快速使用进行web开发详解,内容挺不错的,现在分享给大家,也给大家做个参考。 首先关于的学习,这里推荐一本比较好的教程,nodejs web开发指南,该书通俗易懂地将语言特性讲解完之后,又从一个项目角度带领读者使用学习web开发。 相信这是一个比较好的学习模式和过程。 由于这本书是2012年出的,书中的一个web教学项目是开发一个微博。 从2012到现在,及其生态环境发生了很大改变,所以关于该书的学习如果照着书本显然是过于陈旧的。 到目前为止,的web开发框架已经升级到了Express4.12.1,对于MongoDB的操作更多是使用mongoose这个对象模型,而不是之前mongoDB 官方提供的原生的API,所以本文将基于nodejsV0.1033 + MongoDBV3.0.2+ Jade1.9.2 + mogooseV4.0.1来重构该书中的微博项目,这个组合也是目前最新的使用进行web开发的常用组合之一,如果需要入门使用进行web开发,正在学习nodejs web开发指南的和想快速了解 web开发模式的朋友,相信本文是有一定帮助意义的。 框架安装1)在node命令行模式下输入以下命令npm install -g express该命令在全局环境下安装express框架,在安装完这一步之后,并不能直接使用express命令来生成express项目,需要再安装一个express项目生成器,在express2.X的版本中是不需要的,express4.X版本之后将项目生成器和express本身分离了出来,如果不安装express-generator这个生成器就使用express命令来生成项目,会遇到报express不是内部或外部命令这个错误,这是需要注意的地方,nodejs web开发指南原书中是没有安装express-generator这一步的。 2)安装express-generatornpm install -g express-generator3)生成一个项目cd microblogcd microblogexpress micorblog这里随意在硬盘某个目录下创建一个microblog的文件夹,进入该文件夹,然后使用express microblog命令创建了一个microblog的express项目。 生成结构如下:其中是项目入口文件,是npm 包管理文件,bin文件夹里面的放一些全局配置项以及命令行配置等。 public 文件夹是用来存放项目静态文件目录如js,css以及图片,routes文件夹是用来存放路由监听的代码相关文件。 views文件夹用来存放模板文件,这里需要注意的是express4.X使用jade作为项目的默认模板引擎,而在原书中是使用ejs作为模板引擎的,所以这里默认生成的是jade文件。 无可否认ejs是要简单些,但是原理都是一样的,我们使用jade作为开发的模板引擎。 4)启动项目并查看cd microblognpm installnpm start进入到microblog文件夹,安装项目所需相关模块(根据文件),然后启动项目,这时候打开浏览器查看项目输入地址localhost:3000,结果如下说明一切正常,到目前为止,我们已经拥有了一个在浏览器中运行的web项目雏形。 下面进行开发,原书中的微博项目的主要功能是用户能够注册登录,权限控制并让用户发布微博在用户个人主页和项目首页分别显示,这些功能完整版代码会提供,由于篇幅原因,这里以用户注册登录模块来说明如何进行一个完整流程的web开发。 2.页面布局依照web开发流程,我们首先来构建一个项目主页,项目主页是由布局文件和内容文件组成,关于的jade的学习,这里提供两个地址,对于以前使用过类似模板引擎如smarty,razor等的,可以看看文档就能够上手做了,基本原理都是大同小异。 打开views文件,将文件代码改写如下:doctype htmlhtml head title= title link(rel=stylesheet, href=/stylesheets/) body a(href=/) Microblog li a(href=/) 首页 li a(href=/login) 登录 li a(href=/reg) 注册 block content hr p a(href=myzhibie | @2015需要注意父级元素和子元素的换行之间缩进,jade是利用缩进来区别代码层级的。 首页内容文件 layoutblock content if message #{message} //如果用户登录或者注册成功并且没有在登录状态下点击注册或者登录 if success&&user #{success},欢迎 #{user} 来到 Microblog else if !success&&user 欢迎 #{user} 来到 Microblog else 欢迎来到 Microblog Microblog是一个基于,使用express4.12.1,jade1.9.2以及MongoDB搭建起来的微博系统,是对开发指南一书中教学项目的重构。 if user (href=/logout) 退出 (href=/users/#{user}) 发表文章 else (href=/login) 登录 (href=/reg) 立即注册 each val in posts #{}说 p | #{}首页内容是继承了模板文件.原书中使用的bootstrap来构建页面的css布局和样式,这里我自己手写了一个仿bootstrap风格的布局样式,没有应用bootstrap,文件如下:body { padding: 50px; font: 14px Lucida Grande, Helvetica, Arial, sans-serif;}html,body,ul,p,hr,h3{ margin:0; padding: 0;}a { color: #00B7FF;}{ background:#337aB7; width: 100%; height: 60px; color: #fff; font-size: 22px; overflow: hidden;}{ line-height: 60px;}{ overflow: hidden;} li{ list-style: none; float: left; display: inline-block; margin-left: 20px; margin-right: 20px;} li a{ text-decoration: none; color: #fff;} li a:hover{} li:not(:first-child) a:hover{ font-size: 26px; color: #F5F5F5;}{ font-size: 26px; font-weight: 700;}{ min-height: 500px; text-align: center; width: 100%;}{ width: 100%; height: 50px; font-size: 22px; background:#F5F5F5 ; line-height: 50px;} a{ color:#337aB7; text-decoration: none;}{ color: #; width: 96%; margin: 30px auto;}{ width: 100%; margin:0 auto; border-radius: 5px; height: 300px; background:#F5F5F5 ;}{ width: 100%; margin:0 auto; border-radius: 5px; height: 200px; background:#F5F5F5 ;}{ padding-top: 50px; padding-left:50px; font-size: 50px; text-align: left; padding-bottom: 0; margin: 0;}{ text-align: left; padding-left:50px; margin: 0;}{ overflow: hidden; width: 100%;} li{ text-align: left; font-size: 18px;}{ display: inline-block; float: left; width: 32%; height: 100px; overflow: hidden; padding-right: 20px; text-align: left; text-overflow: ellipsis;}{ margin-top: 10px; margin-bottom: 3px;}{ padding-left: 50px; text-align: left;}{ display: inline-block; padding-left: 15px; padding-right: 15px; height: 38px; line-height: 40px; background: -webkit-gradient(linear, left top, left bottom, from(#0068A6), to(#337aB7)); color: #fff; text-align: center; border-radius: 5px; font-size: 20px; font-weight: 600; border: 1px solid #ccc; text-decoration: none; margin-right: 10px;}{ display: inline-block; padding-left: 15px; padding-right: 15px; height: 38px; line-height: 40px; background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#F5F5F5)); color: #000; text-align: center; border-radius: 5px; font-size: 20px; font-weight: 600; border: 1px solid #ccc; text-decoration: none;}{ margin-top: 20px; margin-left: 50px; text-align: left; margin-bottom: 20px; border:none; border-bottom: 1px solid #ccc;}{ font-size: 18px; font-weight: 600; line-height: 100%; display: inline-block; width: 10%; vertical-align: middle; text-align: right; padding-right: 10px;}{ text-align: left; font-size: 24px; font-weight: 600;}{ text-align: left; padding-left: 100px; margin-bottom: 20px;} input[type=text],input[type=password]{ width: 200px; height: 20px;} input[type=submit]{ width: 120px; height: 30px; color: #fff; background:-webkit-gradient(linear, left top, left bottom, from(#0068A6), to(#337aB7)); border-radius: 5px; font-size: 20px;}{ margin:20px; width: 100%;}{ font-size: 18px; color: #E73C3C; background: #F2DEDE; border-radius: 5px; width: 300px; text-align: center; margin-left: 100px;}{ height: 30px; line-height: 30px; background: #F2DEDE; color: #E73C3C;}{ width: 60%; height: 30px; border-radius: 3px; border: 1px solid #A3C732; margin-top: 5px; font-size: 20px;}{ height: 40px; vertical-align: middle; padding: 0; margin-top: -5px; margin-left: 5px; width: 80px; background: #A3c732; font-size: 20px; border: none; border-radius: 5px; color: #fff;}{ margin-top: 25px; margin-left: -10px;}{ display: inline-block; text-decoration: none; line-height: 38px; height: 38px; vertical-align: middle; padding: 0; margin-top: -8px; margin-left: 5px; width: 90px; text-align: center; background: #A3c732; font-size: 20px; font-weight: 600; border-radius: 5px; color: #fff; border: 1px solid #ccc;}{ text-align: left; padding-top: 5px; padding-bottom: 0; padding-left: 5px; margin-bottom: 8px;}{ height: 30px; background: #DFF0D8; line-height: 30px; color: #3C7668;}这个css文件是项目中所有的css全部包含在这里,所以比较庞大。 到目前为止,可以查看首页效果如下:首页中的数据都是之前自己测试过程中加入的,这里主要为了查看首页效果,可以忽略这些数据。 由于这里要演示用户注册登录模块,用户注册模块的模板文件如下:extends layoutblock content #{title} (method=post) #{message} (for=username) 用户名 input(type=text,placeholder=输入注册用户名,id=username,name=username) (for=password) 用户密码 input(type=password,placeholder=用户密码,id=password,name=password) (for=passwordconf) 重复密码 input(type=password,placeholder=重复密码,id=passwordconf,name=passwordconf) input(type=submit,name=sub value=注册)用户登陆模板如下:extends layoutblock content #{title} (method=post) #{message} (for=username) 用户名 input(type=text,placeholder=输入登陆用户名,id=username,name=username) (for=password) 用户密码 input(type=password,placeholder=用户密码,id=

windows下node.js的安装及express使用命令配置

、npm、express的安装及express使用命令的配置

如何退出nodejs终端命令行

在的官网下载安装程,双击安装。

安装后,打开运行命令窗口,输入cmd。输入node -v,测试是否安装成功,会输出版本信息。 新的已经集成了npm,所以npm也一并装好了,输入npm -v测试,会输出版本信息。

先配置npm的全局模块的存放路径以及cache路径: npm config set prefix D:\Program Files (x86)\nodejs\node_global npm config set cache D:\Program Files (x86)\nodejs\node_cache

安装express模块。 命令行里输入npm install express -g -g 意思是装在global目录下,即上面的D:\Program Files (x86)\nodejs\node_global;

查看是否安装成功。进入到全局的D:\Program Files (x86)\nodejs\node_global目录下,输入node 回车,输入require(express);出现以下信息即安装成功。 ps:退出nodejs终端命令行,ctrl+D一次 或 ctrl+C两次 或输入“ ” 即可

express命令的使用,查看版本信息。输入express -V ,提示express不是内部或外部命令。 因为express4.x中将命令工具分离出来了,所有需要先装express-generator。 命令行输入:npm install -g express-generator,即安装成功。

使用express命令前,还需要配置下环境变量。 打开计算机,系统属性——高级系统设置——环境变量;在系统变量下,新建NODE_PATH,值为D:\Program Files (x86)\nodejs\node_global(全局路径),将“%NODE_PATH%”到path变量值后面即可。

测试express命令。命令行下输入express -V 显示版本信息,即安装成功。 PS:express -V 中的V 必须是大写的。


本文地址: https://www.q16k.com/article/7b3db56595a5adbbe4bc.html
MC
MC

MC喊麦分享网站,提供MC喊麦及MC喊麦词原创作品发布,MC喊麦MP3舞曲试听下载,MC博客空间,网络及酒吧夜店喊麦。喊麦DJ网-最好的MC喊麦分享平台!

⎛⎝随便看看⎠⎞

随便看看 - SBKK专注于高分电影推荐,分享热门影视杂谈,每日更新GIF动态猜图,打造属于你的电影世界。

3389x在线工具

本站有许多优质的在线工具,同时也收录一部分外站的在线工具,当然,您也可以把本站当作导航,书签使用!

船舶专用配件

该站点未添加描述description...

物流软件

物流软件、物流管理系统适用于专线、快递、国际和综合类型物流公司,仓储针对中小快递物流企业的运作模式小程序APP定制开发,将传统的客户端物流软件开发升级为更为灵活的SaaS网页版TMS物流管理系统,适用于所有的物流公司软件系统。

台湾佬中文娱乐22vvvv,台湾佬中文综合社区,台湾中文综合娱乐网

2021年最新最全台湾佬中文娱乐22vvvv互動交流平臺,上萬網友分享台湾佬中文娱乐22vvvv心得,在這裏可以找到台湾佬中文综合社区,台湾中文综合娱乐网等最新內容,讓您快速掌握台湾佬中文娱乐22vvvv排行榜信息最新進展。

郑州合盛科技

该站点未添加描述description...

年会视频制作

年会视频制作网提供2024年龙年年会开场视频制作,搞笑年会预告片,公司晚会暖场短片头,年会颁奖视频,震撼年会视频,企业年会创意视频,大气年会节目,创意年会游戏,晚会年会策划,公司宣传片头。

安徽罗蒙

【公司简介】 罗蒙集团创建于----年,是一家以设计、生产、销售中---西服、职业装、女装、衬衫等系列服饰为主的大型股份制企业集团。目前公司有员工一万多名,固定资产--多亿。我们公司的占地面积--万平方米,建筑面积--万平方米。西服年生产能力---万件套,衬衫年生产能力---万件。集团下辖--

西安会议公司

陕西西安天成伟业会议策划有限公司 主营 新品发布展销会,签约仪式,学术报告会,户外庆典,展览展示,会场布置,租车服务,广告制作,投影幕布,设备租赁,如需订购温新品发布展销会,签约仪式,学术报告会,户外庆典,展览展示,会场布置,租车服务,广告制作,投影幕布,设备租赁,请联系我们陕西西安天成伟业会议策划有限公司,为您提供优惠的价格和优质的服务

维图文化传媒

维图传媒提供专业的摄影、摄像、活动组织策划和全景图片制作及展示服务,致力打造一个具有内蒙古特色文化的全景图片分享与交流的专业平台。

儿童衣架,衣架,纸板衣架,AT夹子

-是一家集设计、研发、制造等专业的现代化大型出口型企业,旗下生产多种类型的衣架,具有二十年的专业设计、研发、制造与销售经验。

土工格栅

欢迎访问泰安润杰工程材料有限公司网站首页,泰安润杰工程材料有限公司主营:土工格栅,土工格室;地址:

新股

该站点未添加描述description...

武汉波鼎防静电地板有限公司「企业信息」

武汉波鼎防静电地板有限公司是中国电子协会防静电分会会员单位。品牌防静电行业的企业,主要从事计算机机房...

【福永网站建设】福永网络公司

【福永网站建设】拥有百人顾问式服务团队,全国最全面的福永注册公司信息.福永网站设计专业网站建设公司,广东十大网络品牌,11年网站建设经验,超8000家成功案例,提供网站建设,手机网站,微信网站,三网合一等服务;