- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
12.2 jQuery工具方法
12.2 j Query⼯具⽅法
j Query函数库提供了⼀个j Query对象 (简写为$ ),这个对象本⾝是⼀个构造函数,可
以⽤来⽣成j Query对象的实例 有了实例以后,就可以调⽤许多针对实例的⽅法,它
们定义j Query .prototype对象上⾯ (简写为$.fn )
除了实例对象的⽅法以外,j Query对象本⾝还提供⼀些⽅法 (即直接定义j Query对象
上⾯),不需要⽣成实例就能使⽤ 由于这些⽅法类似“通⽤⼯具”的性质,所以我们
把它们称为“⼯具⽅法” (utilities )
常⽤⼯具⽅法
判断数据类型的⽅法
Aj ax操作
$.aj ax
简便写法
Aj ax事件
返回值
JSONP
⽂件上传
参考链接
常⽤⼯具⽅法
(1)$.trim
$.trim⽅法⽤于移除字符串头部和尾部多余的空格
$.trim( Hello ) // Hello
(2 )$.contains
$.contains⽅法返回⼀个布尔值,表⽰某个DO 元素 (第⼆个参数)是否为另⼀个
DO 元素 (第⼀个参数)的下级元素
$.contains(document.documentElement, document.body);
// true
$.contains(document.body, document.documentElement);
// false
(3 )$.each ,$.map
$.each⽅法⽤于遍历数组和对象,然后返回原始对象 它接受两个参数,分别是数据
集合和回调函数
$.each([ 52, 7 ], function( index, value ) {
console.log( index + : + value );
});
// 0: 52
// 1: 7
var obj = {
p1: hello,
p2: world
};
$.each( obj, function( key, value ) {
console.log( key + : + value );
});
// p1: hello
// p2: world
需要注意的,j Query对象实例也有⼀个each⽅法 ($.fn .each ),两者的作⽤差不多
$.map⽅法也是⽤来遍历数组和对象,但是会返回⼀个新对象
var a = [a, b, c, d, e];
a = $.map(a, function (n, i){
return (n.toUpperCase() + i);
});
// [A0, B1, C2, D3, E4]
(4 )$.inArray
$.inArray⽅法返回⼀个值在数组中的位置 (从0开始) 如果该值不在数组中,则返
回-1
var a = [1,2,3,4];
$.inArray(4,a) // 3
(5 )$.extend
$.extend⽅法⽤于将多个对象合并进第⼀个对象
var o1 = {p1:a,p2:b};
var o2 = {p1:c};
$.extend(o1,o2);
o1.p1 // c
$.extend的另⼀种⽤法是⽣成⼀个新对象,⽤来继承原有对象 这时,它的第⼀个参
数应该是⼀个空对象
var o1 = {p1:a,p2:b};
var o2 = {p1:c};
var o = $.extend({},o1,o2);
o
// Object {p1: c, p2: b}
默认情况下,extend⽅法⽣成的对象是“浅拷贝” ,也就是说,如果某个属性是对象或
数组,那么只会⽣成指向这个对象或数组的指针,⽽不会复制值 如果想要“深拷
贝” ,可以在extend⽅法的第⼀个参数传⼊布尔值true
var o1 = {p1:[a,b]};
var o2 = $.extend({},o1);
var o3 = $.extend(true,{},o1);
o1.p1[0]=c;
o2.p1 // [c, b]
o3.p1 // [a, b]
上⾯代码中,o2是浅拷贝,o3是深拷贝 结果,改变原始数组的属性,o2会跟着⼀起
变,⽽o3不会
(6 )$
文档评论(0)