ES6 Promise 和 Async/await的使用、事件委托拄丰、Charles抓包工具的使用

事件委托

//事件委托
window.onload = function(){
  var oUl = document.getElementById("ul1");
  oUl.onclick = function(ev){
    var ev = ev || window.event;
    var target = ev.target || ev.srcElement;
    if(target.nodeName.toLowerCase() == 'li'){
            alert(123);
         alert(target.innerHTML);
    }
  }
}

ES6 Promise 和 Async/await的使用

//Promise
 // 1請求
  function getData1 () {
    return new Promise(function (resolve, reject) {
      setTimeout(() => {
        console.log('1執(zhí)行了')
        resolve('請求到模擬數(shù)據(jù)1111拉')
      }, 2000)
    })
  }
  // 2請求
  function getData2 (params) {
    return new Promise(function (resolve, reject) {
      setTimeout(() => {
        console.log('2執(zhí)行了')
        resolve('請求到模擬數(shù)據(jù)22222拉府树!params:' + params)
      }, 1500)
    })
  }

 function promiseDemo () {
    getData1()
      .then(res => {
        return getData2(res)
      })
      .then(res => {
        console.log(res)
      })
  }
  promiseDemo()
  // 1執(zhí)行了
  // 2執(zhí)行了
  // 請求到模擬數(shù)據(jù)22222拉!params:請求到模擬數(shù)據(jù)1111拉   用時 3500 ms
    
  //async+await
  async function asyncDemo () {
    const r1 = await getData1()
    const r2 = await getData2(r1)
    console.log(r2)
  }
  // 1執(zhí)行了
  // 2執(zhí)行了
  // 請求到模擬數(shù)據(jù)22222拉料按!params:請求到模擬數(shù)據(jù)1111拉   用時 3500 ms

二叉樹

在計算機科學(xué)中奄侠,二叉樹(英語:Binary tree)是每個節(jié)點最多只有兩個分支(不存在分支度大于2的節(jié)點)的樹結(jié)構(gòu)。通常分支被稱作“左子樹”和“右子樹”载矿。二叉樹的分支具有左右次序垄潮,不能顛倒。

上面是來自維基百科的解釋闷盔。而每一個節(jié)點的值總大于左子樹的值弯洗,而小于右子樹的值的二叉樹就叫排序二叉樹。比如:那么該如何創(chuàng)建一棵排序二叉樹呢逢勾?
function Btree() {
    // 節(jié)點對象
    var Node = function(key) {
        this.key = key;
        this.right = null;
        this.left = null;
    };
    // 初始化根節(jié)點
    var root = null;

    var insertnode = function(node, newnode) {
        // 判斷插到左子樹中還是右子樹中
        if(newnode.key < node.key) {
            if(node.left === null) {
                node.left = newnode;
            } else {
                insertnode(node.left, newnode);
            }
        } else {
            if(node.right === null) {
                node.right = newnode;
            } else {
                insertnode(node.right, newnode);
            }
        }
    };
     this.insert = function(key) {
        var newNode = new Node(key);
        // 判斷插入的是否是根節(jié)點
        if(root === null) {
            root = newNode;
        } else {
            insertnode(root, newNode);
        }
    };
}我們可以看到插入到二叉樹的過程就是排序的過程牡整,又如何把其輸(遍歷)出來呢。遍歷可分為:

前序遍歷
中序遍歷
后序遍歷我們先看中序遍歷是如何實現(xiàn)的敏沉,只需要在Btree中加入以下兩個方法

var zhongxu = function(node, callback) {
        if(node !== null) {
            zhongxu(node.left, callback);
            callback(node.key);
            zhongxu(node.right, callback);
        }
    };

this.zhongxubianli = function(callback) {
        zhongxu(root, callback);
    }而前序后序與中序的差別不過在于callback方法的先后果正,即

前序就是先輸出值再依次遍歷左右子樹
中序就是先遍歷左子樹再輸出值然后再遍歷右子樹
后序就是先遍歷左右子樹再輸出值

// 前序遍歷
var qianxu = function(node, callback) {
        if(node !== null) {
            callback(node.key);
            zhongxu(node.left, callback);
            zhongxu(node.right, callback);
        }
    };// 后序遍歷
var houxu = function(node, callback) {
        if(node !== null) {
            zhongxu(node.left, callback);
            zhongxu(node.right, callback);
            callback(node.key);
        }
    };測試
var nodes = [8,2,4,5,7,13,11,9,14];
var btree = new Btree();
nodes.forEach(function(key) {
    btree.insert(key);
})
var callback = function(key) {
        console.log(key);
    };
btree.zhongxubianli(callback);結(jié)果就是:

以上就是js的排序二叉樹實現(xiàn)過程。

Charles抓包工具的使用

  • 第一步:創(chuàng)建測試文件盟迟。


    image
  • 第二步:創(chuàng)建數(shù)據(jù)文件秋泳,用測試文件發(fā)起請求測試數(shù)據(jù)。


    image
  • 第三步:配置Charles攒菠,Proxy->Proxy Setting->HTTP Proxy->Port (配置端口號任意迫皱,不要于本機其他端口沖突)


    image
  • 第四部:配置手機代理


    image
  • 第五部:手機和電腦鏈接同一個wifi,在統(tǒng)一網(wǎng)段下辖众,啟動xampp服務(wù)器卓起,手機通過ip訪問測試文件,請求的數(shù)據(jù)就會被抓包工具charles拿到凹炸。


    image
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末戏阅,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子啤它,更是在濱河造成了極大的恐慌奕筐,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件变骡,死亡現(xiàn)場離奇詭異离赫,居然都是意外死亡,警方通過查閱死者的電腦和手機塌碌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進(jìn)店門渊胸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人台妆,你說我怎么就攤上這事翎猛。” “怎么了接剩?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵办成,是天一觀的道長。 經(jīng)常有香客問我搂漠,道長迂卢,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任桐汤,我火速辦了婚禮而克,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘怔毛。我一直安慰自己员萍,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布拣度。 她就那樣靜靜地躺著碎绎,像睡著了一般螃壤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上筋帖,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天奸晴,我揣著相機與錄音,去河邊找鬼日麸。 笑死寄啼,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的代箭。 我是一名探鬼主播墩划,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼嗡综!你這毒婦竟也來了乙帮?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤极景,失蹤者是張志新(化名)和其女友劉穎蚣旱,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體戴陡,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡塞绿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了恤批。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片异吻。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖喜庞,靈堂內(nèi)的尸體忽然破棺而出诀浪,到底是詐尸還是另有隱情,我是刑警寧澤延都,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布雷猪,位于F島的核電站,受9級特大地震影響晰房,放射性物質(zhì)發(fā)生泄漏求摇。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一殊者、第九天 我趴在偏房一處隱蔽的房頂上張望与境。 院中可真熱鬧,春花似錦猖吴、人聲如沸摔刁。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽共屈。三九已至绑谣,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間拗引,已是汗流浹背借宵。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留寺擂,地道東北人暇务。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓泼掠,卻偏偏與公主長得像怔软,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子择镇,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容

  • Charles的簡單介紹: Charles又名青花瓷挡逼,是Mac端的一款截取與分析網(wǎng)絡(luò)請求的工具(windows也可...
    Adminwang閱讀 32,305評論 0 26
  • 簡介 Charles是目前最強大的http調(diào)試工具之一,在網(wǎng)絡(luò)開發(fā)中使用它作為分析工具腻豌,可以很大程度上提高我們的開...
    jamalping閱讀 28,218評論 1 11
  • 1家坎、工具介紹 Charles是一款在Mac下常用的數(shù)據(jù)包截取工具,在做移動開發(fā)時吝梅,為了調(diào)試移動端與服務(wù)端的網(wǎng)絡(luò)通訊...
    栗子_2019閱讀 8,420評論 0 2
  • 簡介 Charles其實是一款代理服務(wù)器虱疏,通過成為電腦或者瀏覽器的代理,然后截取請求和請求結(jié)果達(dá)到分析抓包的目的苏携。...
    薪火_閱讀 100,451評論 10 59
  • 前段時間右冻,可能是我上大學(xué)以來收獲最多的一個月装蓬, 每天起早貪黑,不為別的纱扭,只為完成我用生活費換來的考試牍帚,總共報名了兩...
    木小核子閱讀 524評論 0 1