前端提高篇(一百):jQuery常用工具方法,2024年最新【前端面试题

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
img

正文

console.log( $.inArray(‘b’, arr, 2)); //不存在,返回-1

$.each():循环遍历数据

遍历数组

var data = [

{ name: ‘ccy’,

age: 18},

{ name: ‘zxq’,

age: 19

}

]

var str = ‘’

$.each(data, function(index, ele){

str += ‘

’ +ele.name + ‘,’ + ele.age + ‘

})// 用字符串拼接的方式,集体append,省性能

$(‘body’).append(str);

$.each处理函数下的this指的是每一个ele数据

效果:往body最后添加两个p标签,标签内容为给定的数据

在这里插入图片描述

each也有一个实例方法,处理dom对象,如:$('li').each( function() {} )处理的是每一个li元素

遍历对象

var data = {

ccy : 18,

zxq : 19

}

var str = ‘’

$.each(data, function(key, value){

str += ‘

’ +key + ‘,’ + value + ‘

})

$(‘body’).append(str);

效果一致,此时成功回调函数的参数是对象中的key和value

$.merge():合并数组、类数组

合并数组

var arr1 = [‘a’, ‘b’, ‘c’]

var arr2 = [‘d’, ‘e’, ‘f’]

$.merge(arr1, arr2);//将arr2合并到arr1,并返回arr1

console.log(arr1);

效果:

在这里插入图片描述

合并类数组

var arrLike1 = {

0: ‘a’,

1: ‘b’,

2: ‘c’,

length: 3

}

var arrLike2 = {

0: ‘d’,

1: ‘e’,

2: ‘f’,

length: 3

}

$.merge(arrLike1, arrLike2);//将arrLike2合并到arrLike1,并返回arrLike1

console.log(arrLike1);

效果:

在这里插入图片描述

合并数组和类数组

合并后的数据类型,以第一个参数的类型为准

合并(数组,类数组),将类数组合并到数组上,返回数组;

合并(类数组,数组),将数组合并到类数组上,返回类数组

$.merge(arr1, arrLike2);

console.log(arr1);

效果:返回arr1,数组

在这里插入图片描述

$.merge(arrLike1, arr2);

console.log(arrLike1);

效果:返回arrLike1,类数组

在这里插入图片描述

$.noConflict()避免冲突


避免与其他框架冲突

jQuery 使用 $ 符号作为 jQuery 的简写

而其他 JavaScript 框架也会使用 $ 符号作为简写

为避免冲突,可以将$标识符的控制权释放出去,这样别的类库就可以使用

$.noConflict()基本使用

//释放权限

$.noConflict()

//jQ就不能再使用$符号了

// console.log( ( ′ u l ′ ) ) ; / / 报错提示“ ('ul'));//报错提示“ (ul));//报错提示 is not a function”

//需要使用jQuery()

console.log(jQuery(‘ul’))

$.noConflict(true)

当里面传true时,符号和jQuery()方法的权限都被移交

$.noConflict(true)

//jQ就不能再使用$符号和jQuery()了

console.log(jQuery(‘ul’));//报错“jQuery is not a function”

var j = $.noConflict(true)

将符号和jQuery()方法的权限移交,如果要使用jQuery的功能,可以用j():

var j = $.noConflict(true)

//jQ就不能再使用$符号和jQuery()了,但可以使用j()

console.log(j(‘ul’));//顺利打印

避免新旧版本冲突

新版本的jQ对一些功能不再兼容,如ie6,如果需要兼容,就要用旧版本的jQ;但新版本的新增功能我也想使用,就需要同时使用新旧版本

用$.noConflict()把符号的使用权交给后引入的那个版本

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值