nodejs 和 js

摘要:
NodeJS基于ECMASCRIPT,然后扩展为操作其他东西,如OS操作系统、文件系统、网络、数据库等。也就是说,NodeJS和JS在底部是相同的,都是ECMASCRIPT,但扩展的功能不同。在ecmascript中,node与JS相同,例如数据类型、语法结构和内置对象的定义。但是js中的top对象是一个window对象,但node中没有window对象。这就是两者的区别。

JavaScript组成:ECMAScript(定义这门语言的基础,比如语法、数据类型、结构以及一些内置对象等)、DOM(基于ECMASCRIPT,扩展出来的用于操作页面元素的方法)、BOM(基于ECMASCRIPT,扩展出来的用于操作浏览器的一些方法)。

NodeJS是以ECMASCRIPT为基础,然后在这个基础上扩展出来的一些操作其他东西(即操作非浏览器)的一些方法,比如操作OS操作系统、file文件系统、net网络、database数据库等。也就是说nodejs和JS在底层都是一样的,都是ecmascript,但是扩展出来的功能却是不一样的。一个是偏向于前端浏览器,一个是偏向于后端。
在ecmascript部分node和JS其实是一样的,比如与数据类型的定义、语法结构,内置对象。但在js中的顶层对象是window对象,但是在node中没有什么window对象,node中的顶层对象是global对象。这就是二者的差异性。

在window对象中,定义一个全局变量是可以通过Window来访问的,但是在node中是不能通过global对象来访问的,如:
var a=100;
console.log(global.a);这种方式是输出结果为undefined
对于上面这个例子,因为在node中定义的变量是模块中的对象,而并不是global全局变量,所以结果为undefined
ECMAScript中文版:http://lzw.me/pages/ecmascript/

免责声明:文章转载自《nodejs 和 js》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇sql server登录名、服务器角色、数据库用户、数据库角色、架构区别联系Mysql----mysql启动服务时提示"服务名无效"下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

js禁止微信浏览器下拉显示黑底查看网址,不影响内部Scroll

开发项目跑在微信浏览器经常会遇到一个问题,微信浏览器下拉的时候会出现自带的黑色底色(显示网址)如下图: 网上好多js禁止操作的做法禁止了内部Scroll,导致页面不能滚动,上拉加载失效,例如这种做法: $(‘body’).on(‘touchmove’, function (event) {event.preventDefault();}); or doc...

node中的request模块(http.get封装版)

1.下载并引入request cnpm install request --save; const request = require("request"); 2.基本使用 request({ url: url,//请求路径 method: "POST",//请求方式,默认为get headers: {//设置请求头...

OSG的节点访问

OSG中节点的访问使用的是一种访问器模式。 一个典型的访问器涉及抽象访问者角色(Visitor), 具体访问者(Concrete Visitor), 节点角色(Node)。 OSG中访问者角色为NodeVisitor类,其基本结构如下: NodeVisitor(TraversalMode tm) //构造函数,TraversalMode为节点树的遍历方式...

java大文件(视频)切割上传

我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用。 首先我们需要了解的是上传文件三要素: 1.表单提交方式:post (get方式提交有大小限制,post没有) 2.表单的enctype属性:必须设置为multipart/form-data. 3.表单必须有文件上传项:file,且文件项需要给定n...

JS获取网页高度和宽度

注:此文属于转载自他人博客 网页可见区域宽: document.body.clientWidth 网页可见区域高: document.body.clientHeight 网页可见区域宽: document.body.offsetWidth (包括边线的宽) 网页可见区域高: document.body.offsetHeight (包括边线的高) 网页正文全...

Chrome开发者工具面板 F12 调试大全 转载:https://www.cnblogs.com/ajaxlu/p/11855343.html

面板上包含了Elements面板、Console面板、Sources面板、Network面板、Timeline面板、Profiles面板、Application面板、Security面板、Audits面板这些功能面板。这些按钮的功能点如下: Elements:查找网页源代码HTML中的任一元素,手动修改任一元素的属性和样式且能实时在浏览器里面得到反馈。...