var str1 = new String('asdf')
typeof str//"string"
typeof str1//"object"
Object.prototype.toString.call(str) //"[object String]"
Object.prototype.toString.call(str1) //"[object String]"
综上所述,判断是否为字符串使用下边的最保险
Object.prototype.toString.call(str) === "[object String]"
javaScript判断一个字符串中是否包括有数字和"-",在一些表单提交的地方,这是比较有用的常规判断,这里收集有几种不同的方法,包括普通的JS验证法、正则表达式法,另外还有判断是否为浮点数的js函数,在最后还将简要介绍下isNAN函数的使用方法和例子:正则表达式方法判断是否为数字,包括判断正整数:
01function checkRate(input)
02{
03 var re = /^[0-9]+.?[0-9]*$/ //判断字符串是否为数字,//若判断正整数,则后边是:/^[1-9]+[0-9]*]*$/
04 if (!re.test(input.rate.value))
05{
06alert("请输入数字(例:0.02)")
07input.rate.focus()
08return false
09 }
10}
普通的JS函数方式:
01function BASEisNotNum(theNum)
02{
03if (BASEtrim(theNum)=="")
04return true
05for(var i=0i<theNum.lengthi++){
06oneNum=theNum.substring(i,i+1)
07if (oneNum<"0" || oneNum>"9")
08return true
09}
10return false
11}
判断是否是正数,也就是正整数:
view sourceprint?
1function BASEisNotInt(theInt)
2{
3theInt=BASEtrim(theInt)
4if ((theInt.length>1 &&theInt.substring(0,1)=="0") || BASEisNotNum(theInt)){
5return true
6}
7return false
回文 ( Palindromes ),在中文文当中是指倒着念和顺着念都是相同的,前后对称,例如“上海自来水来自海上”;在英文文当中是指正着看和反着看都相同的单词,例如“madam”;而对于数字,又称之为回文数,是指一个像“16461”这样的对称的数,即这个数的数字按相反的顺序重新排列后得到的数和原来的数一样。
判断给定的字符串,如果字符串是一个Palindromes,那么返回 true ,反之返回 false 。
实际上这里做了很多步对数组的操作,字符转数组 翻转数组 再转字符串,所以这里性能也不是很好。以为数组是引用类型,要改变这个数组,需要开辟新的堆地址空间。
对于给定的字符串,最多可以删除一个字符,判断它是否还是不是回文。
设置一个变量 flag,当第一次发现两边这一对字符不同时,可继续进行对比之后的对比中若发现不同,立即返回结果。
判断字符回文