簡體   English   中英

此節點作用域錯誤的背后是什么?

[英]What is behind this node scope error?

在這里,我有一個正在工作的節點模塊。 以前它只是許多嵌套函數。 我想改進代碼,所以寫出所有功能,然后按順序在底部全部調用它們。 發生了一件奇怪的事情,而不是我得到TypeError: Cannot read property 'url' of undefined

var User = require( '../models/userModel' ),
    ...

exports.add = function ( req, res ) {

    function getVideoId ( req, callback ) {
        videoId = URL.parse( req.query.url ).query.slice(-11)
        callback( videoId )
    }

    ...


    getVideoId( req, function() {
        ...
            ...
                ...
                    ...
                        ...

                            return res.json( "Done." )
                        })
                    })
                })
            })
        })
    })
}

取消嵌套功能后,作用域就會更改。 由於您在另一個函數中聲明了一個函數,因此將保留作用域。 因此,在嵌套函數3中,您可以使用嵌套函數1和2的所有值!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM