Это простой скрипт для извлечения сеанса 'CouchDB' и получения информации о пользователе. Он использует файл couch.j, который использует jQuery. Некоторое время я использую JavaScript, но не могу понять, как передать возвращаемые значения и затем использовать их.
$(document).ready(function () {
this.ctx = getCtx(); //it doesn’t appear that this is actually assigning a variable
console.log(this.ctx); //this returns “undefined”
});
function getCtx(){
$.couch.session({
async: false,
success: function(r) {
ctx = r.userCtx;
if (ctx != null){ //I added this check because otherwise ctx was returning undefined.
console.log("returning ctx: "+ctx);
//Log says: returning ctx: [object Object]
return ctx;
//I know this is returning an object, because of the line above
}
}
});
};
Что еще больше озадачивает меня, так это то, что оператор console.log в функции $(document).ready
возвращает значение undefined до того, как возвращается оператор console.log в функции getCtx()
. Это означает, что он не дает getCtx()
времени для выполнения и фактического получения сеанса.