typeof运算符及实现jquery中的addClass,removeClass,hasClass

来源:互联网 发布:mac 命令行查找文件夹 编辑:程序博客网 时间:2024/05/18 10:09

一、JavaScript有五种基本的数据类型:Undefined、null、String、Number、Boolean,这五种数据类型都可以用typeof来检测

1. Undefined类型:已经声明而未赋值的变量的值为”undefined”[实际上未声明的变量用typeof检测也会返回undefined]
2. Null类型:表示空的对象指针,相当于对象占位符,typeof返回object。如果返回为对象,却找不到这个对象时,通常会返回null
3. Boolean类型:只有两个字面值,true和false。true不一定等于1,false也不一定等于0;同时注意这两个字面值是区分大小写的,也就是说True和False都不是Boolean值。Javascript所有类型都可以通过Boolean()方法来转换成Boolean值
4. Number类型:数字的进制表示及科学计数法表示。
isFinite():判断是否为有限数值,如果是则返回true,否则返回false。
特殊数值::NaN (not a number) 即表示不是一个数字,则isNaN判断不是数字时返回true。
NaN不能用于计算alert(NaN == NaN) //返回false
可用方法:isNaN(),判断是否为”不是数字”,不是数字则返回true,是数字则返回false。
5. String类型:用单引号或双引号表示。字符串起始字符的位置为0,最后一个字符的位置为字符串长度减1。其他数据类型可以使用toString()、String()方法转换成字符串类型。

二、javascript typeof运算符

typeof操作符,返回“表达式”的数据类型的字符串。
typeof是一个操作符(非函数),所以typeof后面可以接括号[如:typeof(表达式)]也可以不接[如:typeof 表达式]
typeof返回的常见字符串:
“undefined”表示这个值未定义,例如: var i;“boolean”表示这个值是布尔值“string”这个值是字符串“number”这个值是数字“object”这个值是对象或null,可理解为null是对象的占位符“function”这个值是函数

三、JavaScript实现jQuery中的addClass()、removeClass()、hasClass()

</pre><pre name="code" class="javascript">function hasClass(ele,cls) {return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));}function addClass(ele,cls) {if (!this.hasClass(ele,cls)) ele.className += " "+cls;}function removeClass(ele,cls) {if (hasClass(ele,cls)) {var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');ele.className=ele.className.replace(reg,' ');}}//call the functionsaddClass(document.getElementById(“test”), “test”);removeClass(document.getElementById(“test”), “test”)if(hasClass(document.getElementById(“test”), “test”)){//do something};

1 0
原创粉丝点击