jQuery静态方法
静态方法each方法
- 原生JS中forEach方法
- 第一个参数: 遍历到的元素
- 第二个参数: 当前遍历到的索引
- 原生的forEach方法只能遍历数组, 不能遍历伪数组
let arr = [1,2,3,4,5,6]
arr.forEach(function(value,index){
console.log(index,value)
})
- jQuery中each方法
- 第一个参数: 当前遍历到的索引
- 第二个参数: 遍历到的元素
- jQuery的each方法数组/伪数组都可以遍历
let obj = {0:1,1:2,2:3,3:4,4:5,5:6,length:6}
$.each(obj,function(index,value) {
console.log(index,value)
})
//正常运行
let arr = [1,2,3,4,5,6]
$.each(arr,function(index,value) {
console.log(index,value)
})
//正常运行
静态方法中map方法
- 原生JS中的map方法
- 第一个参数: 当前遍历到的元素
- 第二个参数: 当前遍历到的索引
- 第三个参数: 当前被遍历的数组
- 和原生的forEach一样,不能遍历的伪数组
let arr = [1,2,3,4,5,6]
arr.map(function (value,index,array) {
console.log(index,value,array)
})
- jQuery中的map方法
- 第一个参数: 要遍历的数组
- 第二个参数: 每遍历一个元素之后执行的回调函数
- 第一个参数: 遍历到的元素
- 第二个参数: 遍历到的索引
- 数组/伪数组都可以遍历
let obj = {0:1,1:2,2:3,3:4,4:5,5:6,length:6}
$.map(obj,function (value,index) {
console.log(index,value)
})
- jQuery中的each方法和map方法的区别
- each静态方法默认被遍历的对象
- map静态方法默认的返回值是一个空数组
- each静态方法不支持在回调函数中对遍历的数组进行处理
- map静态方法可以在回调函数中通过return对遍历的数组进行处理, 然后生成一个新的数组返回
jQuery中的其他静态方法
- $.trim()
- 作用: 去除字符串两端的空格
- 参数: 需要去除空格的字符串
- 返回值: 去除空格之后的字符串
let str = " xxx "
console.log(str) // xxx
let trimStr = $.trim(str)
console.log(trimStr) //xxx
- $.isWindow()
- 作用: 判断传入的对象是否是window对象
- 返回值: true/false
let w = window
let res = $.isWindow(w)
console.log(res) //True
- $.isArray()
- 作用: 判断传入的对象是否是真数组
- 返回值: true/false
let arr = [1,2,3]
let num = $.isArray(arr)
console.log(num) //True
- $.isFunction()
- 作用: 判断传入的对象是否是一个函数
- 返回值: true/false
let f = function () {}
let fun = $.isFunction(f)
console.log(fun) //True
jQuery框架本质上也是一个函数
静态方法holdReady方法
- $.holdReady()
- 作用: 暂停ready执行
- 为True时 -> 暂替运行
- 为False时 -> 恢复运行
$.holdReady(true);
$(document).ready(function () {
console.log('ready')
})
//什么都不会输出