Node.js初接触(一)
本来还在纠结着到底要学哪一种后台语言呢,突然发现node.js很火,既然能被这么多人推崇,自然是有他的优势的。去百度百科看了一眼,或许是我理解能力太差,并没有了解到很多关于node.js的东西,大概就是知道了Node.js是一种用javascript来编写的服务器端脚本,而node就是提供Javascript运行的平台。好吧,还是模模糊糊,嗯,越是不清楚,就越是能激发我的学习欲望。
今天算是正式开始自学了,我发现对于这个新技术,学习的资源好像不是很多,书和视屏都不是很多,而且据大家评价,即使是入门书,看起来也是很费劲的。有点小惊讶,node.js这么难吗?最后找了一本 Node入门 ,然后下载安装node.js,下载安装Git Bash(windows下的命令工具,其实也不清楚是不是用这个,先摸索看看),好了,准备工作就做好了,那就开始学吧。
照例,第一个例子是 Hello World,好吧,问题来了,写好的 console.log("Hello World"); 这个js文件要存在哪个目录里呢,也就是node默认的搜索路径是什么呢?兴许是我太笨了,居然连这个都不知道,不知道有没有别的初学者跟我有一样的问题。既然问题来了那就解决吧,各种搜索查找了很久,未果。嗯,那我就自己来试吧,无外乎安装的那几个目录嘛,一个个的总能试到的,果然是试玩了所有的安装目录都不对呀,有点小崩溃。这时候我突然看到了一条提示消息,Cann't find module 'C:\Users\dandan\hello.js',好吧,原来在这里,嗯,第一个小例子终于弄好了。继续看书,搭建服务器模块:
var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8888);
嗯,就这样照着书上做吧,一边看一边做差不多用了六个小时就吧这本四十多页的书过完了,以下是我第一遍看完学到的一点点东西:
1.node.js自带了一个http模块,这个模块提供了一个函数:createServer,这个函数会返回一个对象,这个对象有一个叫listen的方法,这个方法有一个参数,指定http服务器监听的端口号。
2.node.js里有三个内置对象(我目前所知的三个):require:用于在当前模块中加载和使用别的模块;
exports:用于导出模块的公有方法和属性;
module:多用于替换当前模块的导出对象。
3.一个比较完整的服务器脚本由服务器,请求路由及请求处理程序组成。
4.几个在Javascript里没见过的语法:querystring,fs,formidabled……鉴于刚接触,不敢乱写,这几个要深入学习之后再写。
总结一下,虽说node.js也用的是Javascript语言,但是感觉还是很不一样,应该是跟写前端的思想不一样,有点转换不过来,虽然语法代码写写查查都能明白的差不多,但是深深的感觉到思想跟不上,这才是侦结所在。另外,如果有Linux基础的,来学这个应该是有不少帮助的。嗯,继续吧,把书再从头看一遍。
Node.js初接触(一)的更多相关文章
- node.js 初体验
node.js 初体验 2011-10-31 22:56 by 聂微东, 174545 阅读, 118 评论, 收藏, 编辑 PS: ~ 此篇文章的进阶内容在为<Nodejs初阶之express ...
- Node.js初体验
1.Node.js是什么 [1]Node是一个server端 JavaScript 解释器,但是真的以为JavaScript不错的同学学习Node就能轻松拿下,那么你就错了.总结:水深不深我还不知道, ...
- Angular-Chart.js 初接触;;;
可以先看下下面的链接,了解下, 推荐链接 准备工作 JS文件{angular.js.Chart.js.angular-chart.js} 这3个文件我的获取难易程度:Chart.js > ang ...
- JS一般般的网页重构可以使用Node.js做些什么(转)
一.非计算机背景前端如何快速了解Node.js? 做前端的应该都听过Node.js,偏开发背景的童鞋应该都玩过. 对于一些没有计算机背景的,工作内容以静态页面呈现为主的前端,可能并未把玩过Node.j ...
- Node.js学习笔记(一)基础介绍
什么是Node.js 官网介绍: Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js us ...
- Node.js 基础介绍
什么是Node.js 官网介绍: Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js us ...
- Node.js API 初解读(一)
Node.JS API 初解读 Version: NodeJs v6.2.0 一. Assert 1.简介 Assert模块主要用于断言.如果表达式不符合预期,就抛出一个错误. 该模块用于编写程序的单 ...
- Node.js API 初解读(三)
目录 Node.JS API 初解读三 Node.JS API 初解读三 Version: NodeJs v6.2.0 一. DNS (Domain Name Server) [域名服务器] 1.简介 ...
- node.js + express 初体验【hello world】
[node.js] 一个神奇的XX 呵呵 :) 不知道怎么形容他才好! [express] 是node.js 开发web应用程序的框架 开发环境:XP 大家共同进步吧 :) 一:前期准备: 1:下载 ...
随机推荐
- 《挑战程序设计竞赛》2.1 深度优先搜索 POJ2386 POJ1979 AOJ0118 AOJ0033 POJ3009
POJ2386 Lake Counting Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 25366 Accepted: ...
- iOS之事件的传递和响应机制
前言: 按照时间顺序,事件的生命周期是这样的: 事件的产生和传递(事件如何从父控件传递到子控件并寻找到最合适的view.寻找最合适的view的底层实现.拦截事件的处理)->找到最合适的view后 ...
- 双向认证 HTTPS双向认证
[微信支付]微信小程序支付开发者文档 https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=4_3 HTTPS双向认证使用说明 ...
- PHP替换字符串-str_replace
实例 把字符串 "Hello world!" 中的字符 "world" 替换为 "Shanghai": <?php echo str_ ...
- MySQL中Btree和Hash的局限小结
在索引中,Btree索引和Hash索引的局限性,在这里粗略罗列一下 1 Btree局限 B-树中的节点都是顺序存储的,所以可以利用索引进行查找(找某些值),也可以对查询结果进行ORDER BY(注意O ...
- android自定义View (五)view.requestLayout() 与 invalidate()
一.要点 If in the course of processing the event, the view's bounds may need to be changed, the view wi ...
- linux c编程:System V消息队列一
消息队列可以认为是一个消息链表,System V 消息队列使用消息队列标识符标识.具有足 够特权的任何进程都可以往一个队列放置一个消息,具有足够特权的任何进程都可以从一个给定队列读出一个消息.在某个进 ...
- boost之内存池
讲到内存池我们会想到对对象进行动态分配的过程new包含三个过程 1.使用operator new分配内存 2.使用placement new 初始化 3.返回内存地址. 分配内存可以分解成分配内存和获 ...
- BAPI: TRANSACTION_BEGIN的作用
大概知道是启动一个新会话, CALL FUNCTION 'TRANSACTION_BEGIN' 业务数据处理, CALL FUNCTION 'TRANSACTION_END' 详细功能不清楚. CLE ...
- Python基础-文件的基本操作
测试文件fansik内容如下:This is line 1This is line 2This is line 3This is line 4This is line 5This is line 6 ...