zepto源码--isEmptyObject,isNumeric,inArray,trim--学习笔记

时间:2024-09-23 11:36:38

1、isEmptyObject,判断对象是否为空对象的函数

zepto源码--isEmptyObject,isNumeric,inArray,trim--学习笔记

定义变量name,遍历传入对象的属性name,如果存在任何属性,则返回false,判定传入的参数为非空对象,否则即为空对象。

2、isNumeric,判断传入的参数是否为数字

zepto源码--isEmptyObject,isNumeric,inArray,trim--学习笔记

对参数进行强制类型转换并复制给变量num,num = Number(val)

判断传入参数的类型并赋值给type

如果val存在,并且不是布尔值类型,

不是字符串类型,或者如果是字符串,并且长度不为0,确保字符串类型的数字判定为数字类型,

也不是NaN,也不是无穷大的数字(isFinite(num)用于检查其参数是否是无穷大),则认为其是个常规数字

3、inArray 返回数组中指定元素的索引值(以0为基数),如果没有找到该元素则返回-1

zepto源码--isEmptyObject,isNumeric,inArray,trim--学习笔记

利用JavaScript原生函数,indexOf来判断,i表示的是从哪个索引值开始向后查找,是可选参数,可参考原生indexOf函数来理解该函数。

4、trim 删除字符串首尾的空白符

zepto源码--isEmptyObject,isNumeric,inArray,trim--学习笔记

也是调用JavaScript原生函数trim实现的,唯一的处理是将参数null处理为空字符串。