0
只需要确认。AngularJS /这种情况绝对安全吗?
使用AngularJs假设此Javascript代码:
$rootScope.myNeededBoolean = false;
$rootScope.$on('userHasJustBeenAuthenticated', function(){
if(!$rootScope.myNeededBoolean) {
$rootScope.myNeededBoolean = true;
//determinant assignment to myNeededBoolean so that the following
//piece of code will be executed once and only once.
pieceOfCodeToExecuteOnlyOnce();
}
});
它用于当用户登录到触发一段代码。
假设此代码由两个不同的代码同时触发(例如使用$rootScope.$broadcast
),重点关注相同的事件:userHasJustBeenAuthenticated
。
Javascript正在单线程AFAIK,我可以断言$rootScope.$on
将被访问两次SEQUENTIALLY在100%的情况下?
的确,我想$rootScope.myNeededBoolean
是决定因素,因此pieceOfCodeToExecuteOnlyOnce
只执行一次。
所以100%安全,谢谢;) – Mik378