2014-03-05 112 views
0

我在if语句中遇到了一些麻烦。我只想在发现某个cookie时解析JSON。这是我有:Javascript:只有在对象存在的情况下才使用JSON.parse

var isCookie = if ($cookieStore.get('user') !== 'undefined') { 
     JSON.parse($cookieStore.get('user')) 
    } else { 
     $cookieStore.get('user') 
    }; 

var accessLevels = currentUser = isCookie || { access_token: '', role: userRoles.public, user_id: '' }; 

但我得到一个Uncaught SyntaxError: Unexpected token if错误。

只有当用户cookie存在时,我如何解析我的JSON?

+1

尝试将if语句更改为if($ cookieStore.get('user')) –

回答

4
var cookie = $cookieStore.get('user'); 
var isCookie = cookie ? JSON.parse(cookie) : cookie; 

唯一的问题是,isCookie将是无效的,如果没有饼干反正是发现。

0

你的语法在你声明你的if/else的方式上是不正确的。在这种情况下考虑使用三元运算符

var cookieStoreUser = $cookieStore.get('user'); 
var isCookie = cookieStoreUser ? JSON.parse(cookieStoreUser) : cookieStoreUser; 
相关问题