先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
正文
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,类数组
避免与其他框架冲突
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()把符号的使用权交给后引入的那个版本