javascript學習之路

nodejs

cheerio

可以使用jquery風格處理字符串

var cheerio = require('cheerio');
var $ = cheerio.load(html);
$('.article *').each(function(){
    data += $(this).text();
});

observe.js

可以監(jiān)聽對象屬性,被監(jiān)聽的對象屬性發(fā)生變化時,會自動調用指定的回調函數。

superagent

可以發(fā)送網絡請求,獲得響應結果

var observe = require('observe.js');
var reptile = observe({});
reptile.on({
    url: function(url) {
        var that = this
        //get方法發(fā)出請求,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

可以用于觸發(fā)元素的事件,如果click,hover等,如:

div.trigger(“click”);

框架學習

avalon框架教程
avalon-OniUI

其他

基于DOM模板框架。這類框架主要基于瀏覽器解析的DOM,用DOM,綁定數據,處理業(yè)務邏輯,以及改變DOM屬性。angularjs, knockoutjs, avalonjs都是屬于這類框架
基于字符串模板框架。這類框架主要用來解析字符串,使之形成瀏覽器能夠解析的HTML代碼。ejs、handlebar、jade屬于此類框架。
另外還有處于兩者之間的框架,Regularjs。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容