面向对象认识整个js世界_第1页
面向对象认识整个js世界_第2页
面向对象认识整个js世界_第3页
面向对象认识整个js世界_第4页
面向对象认识整个js世界_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面象认识 JS 世界目录目录21.1 复习31.2 教学目标31.3 BOM 对象41.3.1 Window41.3.2 Location51.3.3. 61.3.4 History71.3.5 Navigator71.3.6 Screen81.3.7 Error81.4 内置对象81.4.1 String81.4.2 Date81.4.3 Array81.4.4 Number81.4.5 如何给内置对象扩展功能 - 重要81.5 Function 对象91.1 复习构造函数创建对象原型方式创建对象1.2 教学目标内置对象StringDateMathArrayRegExpNumberObjec

2、tFunctionNullErrorSesBOM 对象WindowHistoryLocationScreenNavigator自定义对象1.3 BOM 对象浏览器对象模型BOM 是浏览器对象模型的简称Browser Object M1.3.1 Window自定义全部变量的本质定义的全局变量 函数 对象等都会成为 window 对象的属性任何内置全局变量和方法全局常量: Infinity, NaN, undefined, null全局方法: eval(), isFinite(), isNaN(), parseFloat(),parse(),decodeURI()ponent(), encodeU

3、RI(),ponent()Window 常用方法OpenClose1.3.2 Locationlocation 对象Location 传参Location 对象的属性和方法属性hash 设置或返回从井号 (#)开始的 URL(锚)host 设置或返回主机名和当前 URL 的端hostname 设置或返回当前 URL 的主机名href 设置或返回完整的 URLpathname 设置或返回当前 URL 的路径部分port 设置或返回当前 URL 的端protocol 设置或返回当前 URL 的协议search 设置或返回从问号 (?) 开始的 URL(查询部分)方法assign()加载新的文档,这

4、与直接将一个URL 赋值给Location 对象的href 属性效果是一样的reload()重新加载当前文档如果该方法没有规定参数,或者参数是 false,它就会用 HTTP 头If-Modified-Since 来检测服务器上的文档是否已改变。如果文档已改变,reload()会再次该文档。如果文档未改变,则该方法将从缓存中装载文档。这与用户单击浏览器的刷新按钮的效果是完全一样的。如果把该方法的参数设置为 true,那么无档的最后修改日期是什么,它都会绕过缓存,从服务器上重新该文档。这与用户在单击浏览器的刷新按钮时按住 Shift 健的效果是完全一样。replace()用新的文档替换当前文档,

5、replace() 方法不会在 History 对象中生成一个新的。当使用该方法时,新的 URL 将覆盖 History 对象中的当前。Search用于获取查询字符串?Id=1&num=11.3.3dom 树Dom 增删查改原生版本Dom 增删查改 jquery 版本1.3.4 History历史常用方法和属性go(-2)返回上一页.back()后退.forward()前进1.3.5 Navigator常用方法和属性appCodeName 浏览器的代码名appName 浏览器名ppVer浏览器版本号userAgent 浏览器名和版本号platform 浏览器Win32, Win16, WinC

6、E, Mac68k, MacPPC, HP-UX, SunOS等cpuClass CPU 的信息 x86“online 浏览器是否处于联网状态Enabled是否可用1.3.6 Screen常用方法和属性1.3.7 Error常用方法和属性try alert()catch(e) e.message1.4 内置对象1.4.1 String1.4.2 Date1.4.3 Array1.4.4 Number1.4.5 如何给内置对象扩展功能 - 重要练习 给内置对象扩展 trim 功能并调用1.5 Function 对象的重要性1.5.1 它到底是什么这个哥们就是一个系统内置的对象前面定义的函数,其实

7、就是一个 Function 的实例而已。1.5.2 重要性函数-都是 Function 对象的实例Js 的知识点都是面象。对象都是函数实现的。1.6 Function 对象的属性和方法1.6.1 复习 arguments1.6.2 call什么意思借用购物车相关的方法-购物车产品相关的方法-产品第一种:直接拷贝购物车的某个方法到产品对象中来第二种:借用一下。Call 传参1.6.3 Call 的 thisCall 除了可以借用别人的方法之外,还能够更改人家的方法的 this 指向。指向自身。1.6.4 Call 的作用1 借用另外一个对象的方法,而不用拷贝2 将伪数组改成真数组var json

8、 = 1:苹果,2:香蕉,3:菠萝,length:3Var arr = 苹果,香蕉,菠萝1.7 伪数组1.7.1 伪数组的定义伪数组就是一个包含 length 属性的 json 对象 他不是一个真数组其实都是在模拟一个集合(描述集合数据)举例:var json = 1:苹果,2:香蕉,3:菠萝,length:3Var arr = 苹果,香蕉,菠萝他的特点:1,key 都是 1,2,3,4 ,52, 他含有一个 length 属性1.7.2 他和真数组的联系:都是模拟集合var json = 1:苹果,2:香蕉,3:菠萝,length:3Var arr = 苹果,香蕉,菠萝伪数组每次都要自己去计

9、算 length 个数,自己去拼装对象数组:push pop join slihift unshift concact sort1.7.3 既然没有数组好,为什么要出现伪数组因为如下的 集合其实都是伪数组:1,argumengs.geementByTagName.geementByClaameJquery 的框架其实就是伪数组实现的。$(.class)Var json = 1:dom 对象,2:dom 对象,3:dom 对象,length:3for(var item in json)1.7.4 如何将伪数组转为真数组更改 slice 的指向指向可以读 slice 的源码-了解奥秘1.8 App

10、ly1.8.1 Apply 概述(apply 和 call 的区别)apply 的功能和 call 一模一样但是只有一点不一样:Call 的传参是平铺的Apply 是把所有参数放在一个数组里面的传递的。1.8.2 他的巧妙用法计算数组的最大值计算数组的最小值合并一个数组中所有的值到另一个数组/传统写法function PushArray(arr1,arr2)var arrLen=arr2.lengthfor(var i=0;i0) return n+fn(n-1);return 0;/ 2,fn 是一个全局变量,fn一般使用局部bianliang,而这 / 传统方式的缺点:/ 1,破坏了,零重

11、复法则,当一旦函数名称更改,需要更改多处/arguments.callee.length 可以获取实参参数callee 是 arguments 的一个属性成员,它表示对函数对象本身的1.10Caller/返回函数调用者/caller 的应用场景 主要用于察看函数本身被哪个函数调用function fn() /判断某函数是否被调用if (fn.caller) alert(fn.caller.toString(); else alert(函数直接执行);/callee 用处 2 调用自身 - 比如递归函数/ 优点:这样就让代码更加简练。又防止了全局变量的污染var fn=(function(n)i

12、f(n0) return n+arguments.callee(n-1);return 0;)(10);alert(采用callee 方式:+fn)3contructor prototype对象的原型链进阶- 结合 Function 对象综合讲解1.13.1 Object 对象的proto1.13.2 Ototype. proto /*null*/console.log(Ototype._proto )=Ftotype)console.log(Object. proto /object 的 proto指向的是 Ftotypefunction AAAA() fn();AAAA();1.13.3 总结1.13.4 自定义对象的原型的protofunction Product()/*自定义对象的原型的 proto指向*/*object*/ console.log(Ftotype. proto_ = Object) /false console.log(Ftotype. proto_ =Oto

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论