js 和 nodejs 的区别
js 是基于浏览器的脚本语言,nodejs 让 js 有能力脱离浏览器的环境直接让其跑在本地,并且具有了原生应用该有的操作.
这个 Actionscript3 和 AIR 的关系很类似,as3 是依赖于 flashruntime 的脚本语言.flashrumtime 除了我们熟知的浏览器 flash 插件外,还有一个叫做 AIR,它的运行环境是本地环境,所以通过 AIR 能让 as3 有能力在本地运行.
npm 和 bower 的区别
bower 是对 npm 的进一步封装.
bower 是针对浏览器的包管理工具,npm 前后端通用.
在后端能直接使用require
关键字使用对应的包.
对于浏览器需要使用 require.js 来实现.
所以浏览器不能直接使用针对 nodejs 编写的 js 文件,因为不支持require
关键字.
使用Browserify可以把require
转换成require.js
参考资料:
如何新建一个 node 项目
可以使用Yeoman为 js 项目指定项目类型,这样便可以以一种更加通用的项目结构创建项目.
nodejs 面向对象相关
如何新建类/模块,继承,重写
假定有如下代码结构.我们想让 Child 继承 Base,并且能在 App.js 里面调用.
nodejs 里面模块的导出使用module.export
来实现
Base.js
:
Child.js
App.js
集成工具
来源:Grunt, Gulp, and Broccoli
任务工具:帮助执行重复任务的工具编译工具:接受 js,产生转换后的 js
grunt:任务工具
gulp:任务工具/编译工具
broccoli:编译工具