1. 程式人生 > >js 獲取函式返回值

js 獲取函式返回值

return 語句會終止函式的執行並返回函式的值。
但是隻會執行當前函式,如果巢狀多層函式,每一層都需要return才可以
比如:

function test(){
        return 1;
}
console.log(test());     
// 1

function test(){
     (function(){
        return 1;
    })();
}
console.log(test());   
//undefined

//自執行也需要return
function test(){
    return (function(){
        return 1;
    })();
}
//1

參考http://www.cnblogs.com/zmc/p/6916164.html
promise回撥例子

<script src="https://cdn.bootcss.com/bluebird/3.5.1/bluebird.min.js"></script>//如果低版本瀏覽器不支援Promise,通過cdn這種方式
      <script type="text/javascript">
        function loadImg(src) {
            var promise = new Promise(function (resolve, reject) {
                var img = document.createElement('img')
                img.onload = function () {
                    resolve(img)
                }
                img.onerror = function () {
                    reject('圖片載入失敗')
                }
                img.src = src
            })
            return promise
        }
        var src = 'https://www.imooc.com/static/img/index/logo_new.png'
        var result = loadImg(src)
        result.then(function (img) {
            console.log(1, img.width)
            return img
        }, function () {
            console.log('error 1')
        }).then(function (img) {
            console.log(2, img.height)
        })
     </script>

作者:浪裡行舟
連結:https://www.jianshu.com/p/1f66aca680cb
來源:簡書