我正在尝试使用以下代码删除字符串的前 13 个字符:
requestToken = requestToken.substring(13);
但是,我在has no method substring
使用 NodeJS 时遇到“”错误,Javascript 论坛中主要推荐的上述代码不适用于 NodeJS?
我正在尝试使用以下代码删除字符串的前 13 个字符:
requestToken = requestToken.substring(13);
但是,我在has no method substring
使用 NodeJS 时遇到“”错误,Javascript 论坛中主要推荐的上述代码不适用于 NodeJS?
似乎 requestToken 可能不是字符串。
尝试
requestToken = '' + requestToken;
然后 requestToken.substring(13);
substring
(and substr
) 绝对是 node 中字符串原型上的函数;听起来你不是在处理字符串
$ node
> "asdf".substring(0,2)
'as'
先转换requestToken
成字符串:
requestToken = (requestToken+"").slice(13);
requestToken
那么一定不能是字符串。它可能是某种对象,并且您想要的字符串可能由该对象的方法或属性返回。试着console.log(requestToken)
看看那到底是什么。
您还希望.slice()
删除字符串的前面。
你最终可能会得到类似的东西:
myString = requestToken.someProperty.slice(13);
将其强制为字符串可能无法解决您的问题。console.log(typeof(requestToken)) 可能会为您提供有关问题所在的线索。
尝试检查您的对象/变量:
console.log( JSON.stringify(yourObject) );
或者它的类型
console.log( typeof yourVariable );
requestToken.toString().slice(13);
或者
if(typeof requestToken!="string")
{
requestToken.toString().slice(13);
}else
{
requestToken.slice(13);
}