nodejs
cheerio
可以使用jquery风格处理字符串
var cheerio = require('cheerio');
var $ = cheerio.load(html);
$('.article *').each(function(){
data += $(this).text();
});
observe.js
可以监听对象属性,被监听的对象属性发生变化时,会自动调用指定的回调函数。
superagent
可以发送网络请求,获得响应结果
var observe = require('observe.js');
var reptile = observe({});
reptile.on({
url: function(url) {
var that = this
//get方法发出请求,query方法为url添加query字段(url问号背后的)
//end方法接受回调参数,html一般在res.text中
superagent
.get(url)
.query(this.query)
.end(function(res) {
if (res.ok) {
alert(res.text);
}
}.bind(this))
},
});
//当赋值时,就会调用回调函数
reptile.url = 'http://segmentfault.com/blogs/recommend'
reptile.query = 'page=3'
fs
可以进行文件操作(不需要install)
var fs = require('fs');
var cwd = process.cwd();
if(!fs.existsSync('postList')){
fs.mkdirSync('postList');
}
javascript语法相关
Function.prototype.bind
可以试上下文注入到内部对象里,从而避免了var that = this的写法,同时改变原生函数的变量和方法,下面就是从 Array.prototype中剽窃了 forEach 方法来完成遍历。
var unboundForEach = Array.prototype.forEach,
forEach = Function.prototype.call.bind(unboundForEach);
forEach(document.querySelectorAll('.klasses'), function (el) {
el.addEventListener('click', someFunction);
});
trigger
可以用于触发元素的事件,如果click,hover等,如:
div.trigger(“click”);
框架学习
其他
基于DOM模板框架。这类框架主要基于浏览器解析的DOM,用DOM,绑定数据,处理业务逻辑,以及改变DOM属性。angularjs, knockoutjs, avalonjs都是属于这类框架
基于字符串模板框架。这类框架主要用来解析字符串,使之形成浏览器能够解析的HTML代码。ejs、handlebar、jade属于此类框架。
另外还有处于两者之间的框架,Regularjs。