扒开JQuery以及其他一些JS框架源码,常常能看到下面这样的判断,写惯了C#高级语言语法的我,一直以来没能系统的理解透这段代码. var test; //do something... if(test){ //do something... } 此处就系统的记录一下这个JS特殊值与boolean类型的转换,测试代码与结果如下 window.onload = function () { var minusNum = -1; var zero = 0; var one = 1; var strin
var arr = ["曹阳","曹阳","曹阳","张三","张三","张三","张三","张三",]; var temp = []; var obj = {}; var newArr = []; ; i < arr.length; i++) { var dt = arr[i]; if (obj[dt]) { obj[dt]++; } el
js判断是否是数字 第一种方法 isNaN isNaN 返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字). NaN 即 Not a Number isNaN(numValue) 但是如果numValue果是一个空串或是一个空格,而isNaN是做为数字0进行处理的,而parseInt与parseFloat是返回一个错误消息,这个isNaN检查不严密而导致的. 第二种方法 正则表达式 function checkRate(input) { var re = /^[0-9]
首先看看判断字符串长度的几种方法(英文占1个字符,中文汉字占2个字符) 方法一: function strlen(str) { var len = 0; for (var i = 0; i < str.length; i++) { var c = str.charCodeAt(i); //单字节加1 if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) { len++