我使用以下Javascript:
if (typeof content !== 'undefined' && content.length > 0) {
$state.transitionTo('admin.content', { content: content })
}
我认为这是安全的,但它给我一个错误说:
TypeError: Cannot read property 'length' of null
我使用以下函数来判断某些内容是否为数字:
isNumber: function (num) {
// Return false if num is null or an empty string
if (num === null || (typeof num === "string" && num.length === 0)) {
return false;
}
var rtn = !isNaN(num)
return rtn;
},
如何编写一个能够非常安全地确定是否的类似函数 something是一个长度超过0的字符串?
答案 0 :(得分:2)
if (typeof num === "string" && num.length > 0)
{
alert("You've got yourself a string with more than 0 characters");
}
答案 1 :(得分:0)
if (typeof(num) === "string" && num.length > 0) {...}
答案 2 :(得分:0)
我想补充一下现有的答案。 如果通过新的构造函数创建字符串对象,则以下代码将返回false
var stringObj = new String("my string");
typeof stringObj === "string" // this will be false, because the type is object
更好的方法是测试stringObj的构造函数属性
stringObj.constructor === String
如果stringObj是以下列两种方式创建的,那么这个条件就是真的
var stringObj = "my string";
Or
var stringObj = new String("my string");