调用
时出现此错误 if (! !!javaRest.cookie.get('token'))
return javaRest.cookie.get('token').length >4;
else
return false;
并收到此错误:
Uncaught TypeError: Cannot read property 'length' of undefined
现在我想知道无论如何我都知道我的js对象变量是否有长度变量。
答案 0 :(得分:4)
问题不在于.length
未定义,而是javaRest.cookie.get('token')
,因此错误为Cannot read property 'length' of undefined
我会尝试这个,而不是:
var token = javaRest.cookie.get('token');
return (token && token.length > 4);
以上完全取代了基于if
的代码。请注意,这也遵循不要重复自己原则,临时变量避免了第二组属性查找和函数调用。
答案 1 :(得分:0)
看起来您的逻辑不正确:
if (! !!javaRest.cookie.get('token')) // cast to inverse boolean
// should be
if (!!javaRest.cookie.get('token')) // cast to boolean
你想否定结果吗?
!!! undefined // true
!! undefined // false
您正试图获取.length
undefined
(正如您的错误所示)。