假设变量未 a
代码:
if(Object.prototype.toString.call(a) == '[object String]'){
//a是字符型
}
以上代码可以判断a是否为string类型或String对象
if(Object.prototype.toString.call(a) == '[object Number]'){
//a是数值型
}
以上代码可以判断a是否为number类型或Number对象
通过循环数组的方式,进行比较变量值是否在数组中。
1、定一个数组
var arr = ['1','3','a']//定义一个数组2、循环判断
for(var i=0i<arr.lengthi++){//通过length属性获取数组长度,循环遍历数组元素if(arr[i]==a){//通过==比较数组元素是否和变量a的值相等
//在数组中存在
}
}
JS里面的var 是种弱类型,在比较两个数字大小的时候默认比较的是两个字符串,
比如,在比较23和8时,按数字做比较23是比8大,可是按默认的字符串比较时,第一位的2和第一位的8比较是8大,就会出现8比32大的现象。
解决方法:
转换类型再比较