鍍金池/ 問(wèn)答/HTML/ js 匿名函數(shù)與命名函數(shù)的區(qū)別

js 匿名函數(shù)與命名函數(shù)的區(qū)別

命名函數(shù)

var a = function (data) {
    console.log(console.log(data));
}

        $.post("url",{
            id:jqGridSingleRowColumn('list','id'),
            cosetypeid:jqGridSingleRowColumn('list','cosetypeid'),
            receivables:$("#receivables").val()
        },function (data) {
            a(data)
        })
        

發(fā)出一次post請(qǐng)求時(shí)瀏覽器控制臺(tái)會(huì)輸出兩次,一次是正常的data,一次是undefined,見(jiàn)下圖

clipboard.png

修改一下post的代碼使用匿名函數(shù),一次post請(qǐng)求只輸出一次data結(jié)果

是什么原理導(dǎo)致了上面的運(yùn)行差異?匿名函數(shù)部分代碼該如何封裝提高代碼復(fù)用?

回答
編輯回答
青裙

console.log()這個(gè)方法的返回值是undefined,也就是第二行

console.log(data)能夠向控制臺(tái)輸出data,也就是第一行

2018年9月11日 15:39
編輯回答
陌南塵

代碼邏輯問(wèn)題,console.log 里面嵌套了 console.log
直接在success里寫(xiě)匿名function 和 調(diào)用變量 a 所指向的匿名function 結(jié)果是一樣懟

2017年7月4日 03:15
編輯回答
尐潴豬

匿名函數(shù)與命名函數(shù)的區(qū)別,準(zhǔn)確點(diǎn)來(lái)說(shuō)應(yīng)該是函數(shù)表達(dá)式和函數(shù)申明式的區(qū)別:這就跟JS解析器有關(guān)了。文字太多我不做贅述。 給你一個(gè)參考鏈接

2018年3月29日 18:36
編輯回答
乖乖噠

請(qǐng)參考下這里:https://segmentfault.com/q/10...

2017年9月30日 23:27