node.js基础语法

有关于基础知识,总结的比较好的文章:

https://cnodejs.org/topic/551200e6d792542a29789a43





今天安装express遇到问题:


真是一个低阶的错误 啊!习惯性的加了分号

====================================================下面是正题===================================================

1.node基础语法:都是亲手敲的,并且测试过没有问题,下面是app.js文件的内容


console.log("==============全局变量process介绍===========================");
console.log(process.argv);
process.stdout.write('haha!process.stdout标准输出流,write()函数提供了更底层的接口');
process.stdout.write('process.nextTick(callback)功能是为事件循环设置一项任务,node.js会在下次事件循环时调用callback');


console.log("=====================全局变量console介绍============================");
console.log("hello word!向标准输出打印字符");
console.log('byvoid%diovyb');
console.log('byvoid%diovyb',12345);
console.error('ssssssssssssssss');
console.trace("输出当前的调用栈");


console.log("================常用工具util================");


console.log("1.util.inherits");
 
var util = require('util');
function Base(){
this.name = 'base';//构造函数内的属性也不能被继承
this.base = 1991;
this.sayHello = function(){//构造函数内部的函数,不能被继承
console.log('Hello !'+this.name);
};
}
Base.prototype.showName = function(){//Base对象的原型函数,这样的函数可以被继承
console.log(this.name);
};
function Sub(){
// this.name = "sub";
}
console.log("=================util.inherits(sonObj,superObj)实现对象间原型继承的函数===============================");
util.inherits(Sub,Base);


var objBase = new Base();
objBase.showName();
objBase.sayHello();
console.log(objBase);


var objSub = new Sub();
objSub.showName();
//objSub.sayHello();--没有继承构造函数内的方法,所以会提示报错!
console.log(objSub);


console.log("2.util.inspect[object,[showHidden],[depth],[colors]]把任意对象转换为字符串,多用于调试和错误提示");

var util = require("util");
function person(){
this.name = "lixl";
this.toString = function(){
return this.name;
}
}
var obj = new person();
console.log(util.inspect(obj));
console.log(util.inspect(obj,true,3,true));


console.log("============================事件驱动  events============================================")
var events = require("events");
var emitter = new events.EventEmitter();
emitter.on("someEvent",function(arg1,arg2){
console.log("注册的第一个监听器",arg1,arg2,'aaaaaaaaa');
});
emitter.on("someEvent",function(arg1,arg2){
console.log("注册的第二个监听器",arg1,arg2);
});
emitter.emit("someEvent",'lixl',2013);

console.log("=============================emitter注册的特殊事件error事件================================");
var events = require("events");
var emitter = events.EventEmitter();
// emitter.emit('error');

console.log("=============================文件系统   fs================================");
var fs = require("fs");
fs.readFile("file.txt","utf-8",function(err,data){
if(err){
console.log(err);
}else{
console.log(data);
}
});
console.log("=============================HTTP服务器和客户端================================");

var http = require("http");
http.createServer(function(req,res){
res.writeHead(200,{"Content-Type":"text/html"});
res.write('<h1>Node.js</h1>');
res.end('<p>Hello word!</p>');//end表示结束并发送

}).listen(3000);
console.log('HTTP Server is listening at port 3000');


运行结果:



===================================================================================

最后来几个常用命令:

  1. //1.下载软件  
  2. wget http://nodejs.org/dist/v0.10.21/node-v0.10.21-linux-x86.tar.gz  
  3. //2.解压文件  
  4. tar xvf node-v0.10.21-linux-x86.tar.gz  
  5. //3.配置环境变量 '/etc/profile'对所有用户有效vi .bashrc只对当前用户有效  
  6. vi /etc/profile   //在/etc/profile尾部加下入面两句话  
  7. "   export PATH=/root/node-v0.10.21/bin:$PATH         "  
  8. "   export NODE_PATH=/root/node-v0.10.21/lib/node_modules       "  
  9. source /etc/profile  
  10. //4.配置全局模块目录和缓存目录(缓存目录没有需要单建node_cache)  
  11. npm config set prefix "/root/node-v0.10.21"  
  12. npm config set cache "/root/node-v0.10.21/node_cache"  
  13. //5.安装express框架,并查看node、npm、express版本号  
  14. npm install -g express   
  15. node --version          //v0.10.21  
  16. npm --version           //v1.3.11  
  17. express --version       //3.4.2  

有关node调试:

一、eclipse

二、浏览器:【只能在 Chrome、Safari等 WebKit 内核的浏览器中使用,

而不支持 Firefox 或 Internet Explorer】

原因:node-inspector 使用了 WebKit Web Inspector,因此只能在 Chrome、Safari
等 WebKit 内核的浏览器中使用,而不支持 Firefox 或 Internet Explorer。

下面是具体截图:

一、eclipse调试的时候:需要主动点击nodeDebug才能开始调试,而不是传统方式


点击完后,开始调试,会出现一个新的文本文件,并且该文件只读,此时就可以给该只读文件加断点调试了:



二、浏览器调试:

需要先安装一个node-inspector

命令:npm install  -g   node-inspector  全局安装,因为要直接在任意命令行用,而不是针对某个应用:



安装好好需要做三件事:

1.启动要调试的js文件 

2.启动node-inspector命令

3.打开浏览器访问:http://127.0.0.1:8080/debug?port=5858

这样就可以在浏览器中进行断点调试了





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值