




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JavaScript程序设计JavaScript程序设计1第4章JavaScript对象4.1对象简介4.2创建对象4.3对象特性4.4单体内置对象JavaScript程序设计第4章JavaScript对象4.1对象简介4.2创2第4章JavaScript对象4.5实战:产生n个不重复随机数JavaScript程序设计第4章JavaScript对象4.5实战:产生n个不重3
对象
所谓对象,就是一种无序的数据集合,由若干个“键值对”(key-value)构成;varo={p:"HelloWorld"};4.1对象简介第4章JavaScript对象JavaScript程序设计对象4.1对象简介第4章JavaScript对象Jav4
对象属性4.1对象简介第4章JavaScript对象JavaScript程序设计属性属性类型描述Prototype对象对象的原型,用来实现继承功能的关键对象Class字符串描述对象类型的字符串值,使用typeof操作符返回的结果Get函数返回属性值。获取指定属性名的值Put函数设置指定的属性值。为指定的属性赋值CanPut函数返回指定属性是否可用通过Put操作设置值HasProperty函数返回对象是否有指定的属性Delete函数从对象中删除指定属性DefaultValue函数返回对象的默认值,只能是原始值,不能是引用类型Construct函数通过new操作符创建一个对象。实现了这个内部属性的对象被叫做构造函数(可以理解为类)Call函数执行关联在对象上的代码,通过函数表达式调用(也就是通过函数名调用函数),实现了这个内部方法的对象被叫做函数HasInstance函数返回给定的值是否扩展了当前对象的属性和行为(可以理解为给定的对象是否为本类创建的对象),在JavaScript本地对象中,只要Function对象实现了这个属性Scope对象作用域链定义了一个函数的执行环境对象属性4.1对象简介第4章JavaScript对象J5
对象字面量模式创建对象varperson={name:'Nicholas';age:'22';job:"softwareEngineer";sayName:function(){alter(); }}4.2创建对象第4章JavaScript对象JavaScript程序设计对象字面量模式创建对象4.2创建对象第4章JavaSc6
工厂模式创建对象functioncreatePerson(name,age,job){ varo=newObject(); =name; o.age=age; o.job=job; o.sayName=function(){ alert(); }; returno;}varperson1=createPerson("Nicholas",22,"softwareEngineer");varperson2=createPerson("Greg",24,"student");4.2创建对象第4章JavaScript对象JavaScript程序设计工厂模式创建对象4.2创建对象第4章JavaScrip7
构造函数模式创建对象functionPerson(name,age,job){ =name; this.age=age; this.job=job; this.sayName=function(){ alert(); }}//通过new操作符创建Person的实例varperson1=newPerson("Nicholas",22,"softwareEngineer");varperson2=newPerson("Greg",24,"student");person1.sayName();person2.sayName();4.2创建对象第4章JavaScript对象JavaScript程序设计构造函数模式创建对象4.2创建对象第4章JavaScr8
原型模式创建对象functionPerson(){}P="Nicholas";Ptotype.age=22;Ptotype.job="softwareEngineer";Ptotype.sayName(){ alert();};varperson1=newPerson();person1.sayName();//Nicholasalert(person1.sayName==person2.sayName);//true4.2创建对象第4章JavaScript对象JavaScript程序设计原型模式创建对象4.2创建对象第4章JavaScrip9组合使用构造函数模式和原型模式创建对象4.2创建对象第4章JavaScript对象JavaScript程序设计组合使用构造函数模式和原型模式创建对象4.2创建对象第4章10
动态原型模式创建对象functionPerson(name,age){ =name; this.age=age; this.job=job; //方法
if(typeofthis.sayName!='function'){ Ptotype.sayName=function(){ alert(); }; }}varfriend=newPerson('Nicholas','22','SoftwareEngineer');//初次调用构造函数,此时修改了原型varperson2=newPerson('amy','21');//此时sayName()方法已经存在,不会再修改原型4.2创建对象第4章JavaScript对象JavaScript程序设计动态原型模式创建对象4.2创建对象第4章JavaScr11
任务1.任务介绍定义一个Person对象,对象包括属性姓名,并获取实例化对象Person的姓名信息。2.任务目标学会JavaScript几种创建对象模式及全局变量的存储机制。3.实现思路1)选用构造函数模式创建对象,并且将属性为方法的属性定义到函数之外。2)全局变量是绑定在window对象上的,是window对象的属性。4.2创建对象第4章JavaScript对象JavaScript程序设计任务4.2创建对象第4章JavaScript对象Jav12
对象的四种特性
抽象性封装性继承性多态性4.3对象特性第4章JavaScript对象JavaScript程序设计对象的四种特性4.3对象特性第4章JavaScript13
任务1.任务介绍定义一个Student类作为Person类的子类,在Student类中继承父类的walk()方法、重新定义父类的sayHello()方法并添加Student类自己的sayGoodBye()方法。2.任务目标理解JavaScript面向对象的四大特性并掌握创建对象的方法。3.实现思路1)选用构造函数模式创建对象,并且将属性为方法的属性定义到函数之外。2)全局变量是绑定在window对象上的,是window对象的属性。4.3对象特性第4章JavaScript对象JavaScript程序设计任务4.3对象特性第4章JavaScript对象Jav14
Global对象
Global对象是JavaScript中最特别的对象,因为实际上它根本不存在。Global对象在某种意义上是作为一个终极的「兜底儿对象」来定义的。换句话说,不属于任何其他对象的属性和方法,最终都是它的属性和方法。所有在全局作用域中定义的属性和函数,都是Global对象的属性。4.4单体内置对象第4章JavaScript对象JavaScript程序设计Global对象4.4单体内置对象第4章JavaScr15
Global对象常用内置方法(1)URI编码方法(2)eval()方法4.4单体内置对象第4章JavaScript对象JavaScript程序设计Global对象常用内置方法4.4单体内置对象第4章J16
Global对象的属性4.4单体内置对象第4章JavaScript对象JavaScript程序设计属性释义undefined特殊值undefinedNaN特殊值NaNInfinity特殊值InfinityObject构造函数ObjectArray构造函数ArrayFunction构造函数FunctionBoolean构造函数BooleanString构造函数StringNumber构造函数NumberDate构造函数DateRegExp构造函数RegExpError构造函数ErrorEvalError构造函数EvalErrorRangeError构造函数RangeErrorReferenceError构造函数ReferenceErrorSyntaxError构造函数SyntaxErrorTypeError构造函数TypeErrorURIError构造函数URIErrorGlobal对象的属性4.4单体内置对象第4章Java17
Math对象属性4.4单体内置对象第4章JavaScript对象JavaScript程序设计属性释义Math.E自然对数的底数,即常量e的值Math.LN1010的自然对数Math.LN22的自然对数Math.LOG2E以2为底e的对数Math.LOG10E以10为底e的对数Math.PIπ的值Math.SQRT1_21/2的平方根(即2的平方根的倒数)Math.SQRT22的平方根Math对象属性4.4单体内置对象第4章JavaScr18
Math对象方法(1)min()和max()方法;(2)舍入方法:Math.ceil()、Math.floor()和Math.round();
(3)random()方法;(4)其他方法;4.4单体内置对象第4章JavaScript对象JavaScript程序设计属性释义Math.abs(num)返回num的绝对值Math.asin(x)返回x的反正弦值Math.exp(num)返回Math.E的num次幂Math.atan(x)返回x的反正切值Math.log(num)返回num的自然对数Math.atan2(y,x)返回y/x的反正切值Math.pow(num,power)返回num的power次幂Math.cos(x)返回x的余弦值Math.sqrt(num)返回num的平方根Math.sin(x)返回x的正弦值Math.acos(x)返回x的反余弦值Math.tan(x)返回x的正切值Math对象方法4.4单体内置对象第4章JavaScr19
实战
(1)案例描述
用JavaScript产生n个[min,max]区间内的不重复随机数。
(2)实现思路1)运用Math对象的random()方法生成一个[min,max]区间内的随机数;
2)生成n个[min,max]区间内的不重复随机数,生成第i个[min,max]区间的随机数时,与之前i-1个数比较,如有重复,令i=i-1;重复生成第i个随机数。确保每次生成的随机数都不重复。4.5实战:产生n个不重复随机数第4章JavaScript对象JavaScript程序设计实战4.5实战:产生n个不重复随机数第4章JavaSc20
对象简介
创建对象
对象特性
单体内置对象总结第4章JavaScript对象JavaScript程序设计对象简介总结第4章JavaScript对象JavaScr21谢谢观看谢谢观看22JavaScript程序设计JavaScript程序设计23第4章JavaScript对象4.1对象简介4.2创建对象4.3对象特性4.4单体内置对象JavaScript程序设计第4章JavaScript对象4.1对象简介4.2创24第4章JavaScript对象4.5实战:产生n个不重复随机数JavaScript程序设计第4章JavaScript对象4.5实战:产生n个不重25
对象
所谓对象,就是一种无序的数据集合,由若干个“键值对”(key-value)构成;varo={p:"HelloWorld"};4.1对象简介第4章JavaScript对象JavaScript程序设计对象4.1对象简介第4章JavaScript对象Jav26
对象属性4.1对象简介第4章JavaScript对象JavaScript程序设计属性属性类型描述Prototype对象对象的原型,用来实现继承功能的关键对象Class字符串描述对象类型的字符串值,使用typeof操作符返回的结果Get函数返回属性值。获取指定属性名的值Put函数设置指定的属性值。为指定的属性赋值CanPut函数返回指定属性是否可用通过Put操作设置值HasProperty函数返回对象是否有指定的属性Delete函数从对象中删除指定属性DefaultValue函数返回对象的默认值,只能是原始值,不能是引用类型Construct函数通过new操作符创建一个对象。实现了这个内部属性的对象被叫做构造函数(可以理解为类)Call函数执行关联在对象上的代码,通过函数表达式调用(也就是通过函数名调用函数),实现了这个内部方法的对象被叫做函数HasInstance函数返回给定的值是否扩展了当前对象的属性和行为(可以理解为给定的对象是否为本类创建的对象),在JavaScript本地对象中,只要Function对象实现了这个属性Scope对象作用域链定义了一个函数的执行环境对象属性4.1对象简介第4章JavaScript对象J27
对象字面量模式创建对象varperson={name:'Nicholas';age:'22';job:"softwareEngineer";sayName:function(){alter(); }}4.2创建对象第4章JavaScript对象JavaScript程序设计对象字面量模式创建对象4.2创建对象第4章JavaSc28
工厂模式创建对象functioncreatePerson(name,age,job){ varo=newObject(); =name; o.age=age; o.job=job; o.sayName=function(){ alert(); }; returno;}varperson1=createPerson("Nicholas",22,"softwareEngineer");varperson2=createPerson("Greg",24,"student");4.2创建对象第4章JavaScript对象JavaScript程序设计工厂模式创建对象4.2创建对象第4章JavaScrip29
构造函数模式创建对象functionPerson(name,age,job){ =name; this.age=age; this.job=job; this.sayName=function(){ alert(); }}//通过new操作符创建Person的实例varperson1=newPerson("Nicholas",22,"softwareEngineer");varperson2=newPerson("Greg",24,"student");person1.sayName();person2.sayName();4.2创建对象第4章JavaScript对象JavaScript程序设计构造函数模式创建对象4.2创建对象第4章JavaScr30
原型模式创建对象functionPerson(){}P="Nicholas";Ptotype.age=22;Ptotype.job="softwareEngineer";Ptotype.sayName(){ alert();};varperson1=newPerson();person1.sayName();//Nicholasalert(person1.sayName==person2.sayName);//true4.2创建对象第4章JavaScript对象JavaScript程序设计原型模式创建对象4.2创建对象第4章JavaScrip31组合使用构造函数模式和原型模式创建对象4.2创建对象第4章JavaScript对象JavaScript程序设计组合使用构造函数模式和原型模式创建对象4.2创建对象第4章32
动态原型模式创建对象functionPerson(name,age){ =name; this.age=age; this.job=job; //方法
if(typeofthis.sayName!='function'){ Ptotype.sayName=function(){ alert(); }; }}varfriend=newPerson('Nicholas','22','SoftwareEngineer');//初次调用构造函数,此时修改了原型varperson2=newPerson('amy','21');//此时sayName()方法已经存在,不会再修改原型4.2创建对象第4章JavaScript对象JavaScript程序设计动态原型模式创建对象4.2创建对象第4章JavaScr33
任务1.任务介绍定义一个Person对象,对象包括属性姓名,并获取实例化对象Person的姓名信息。2.任务目标学会JavaScript几种创建对象模式及全局变量的存储机制。3.实现思路1)选用构造函数模式创建对象,并且将属性为方法的属性定义到函数之外。2)全局变量是绑定在window对象上的,是window对象的属性。4.2创建对象第4章JavaScript对象JavaScript程序设计任务4.2创建对象第4章JavaScript对象Jav34
对象的四种特性
抽象性封装性继承性多态性4.3对象特性第4章JavaScript对象JavaScript程序设计对象的四种特性4.3对象特性第4章JavaScript35
任务1.任务介绍定义一个Student类作为Person类的子类,在Student类中继承父类的walk()方法、重新定义父类的sayHello()方法并添加Student类自己的sayGoodBye()方法。2.任务目标理解JavaScript面向对象的四大特性并掌握创建对象的方法。3.实现思路1)选用构造函数模式创建对象,并且将属性为方法的属性定义到函数之外。2)全局变量是绑定在window对象上的,是window对象的属性。4.3对象特性第4章JavaScript对象JavaScript程序设计任务4.3对象特性第4章JavaScript对象Jav36
Global对象
Global对象是JavaScript中最特别的对象,因为实际上它根本不存在。Global对象在某种意义上是作为一个终极的「兜底儿对象」来定义的。换句话说,不属于任何其他对象的属性和方法,最终都是它的属性和方法。所有在全局作用域中定义的属性和函数,都是Global对象的属性。4.4单体内置对象第4章JavaScript对象JavaScript程序设计Global对象4.4单体内置对象第4章JavaScr37
Global对象常用内置方法(1)URI编码方法(2)eval()方法4.4单体内置对象第4章JavaScript对象JavaScript程序设计Global对象常用内置方法4.4单体内置对象第4章J38
Global对象的属性4.4单体内置对象第4章JavaScript对象JavaScript程序设计属性释义undefined特殊值undefinedNaN特殊值NaNInfinity特殊值InfinityObject构造函数ObjectArray构造函数ArrayFunction构造函数FunctionBoolean构造函数BooleanString构造函数StringNumber构造函数NumberDate构造函数DateRegExp构造函数RegExpError构造函数ErrorEvalError构造函数EvalErrorRangeError构造函数RangeErrorReferenceError构造函数ReferenceErrorSyntaxError构造函数SyntaxErrorTypeError构造函数TypeErrorURIError构造函数URIErrorGlobal对象的属性4.4单体内置对象第4章Java39
Math对象属性4.4单体内置对象第4章JavaScript对象JavaScript程序设计属性释义Math.E自然对数的底数,即常量e的值Math.LN1010的自然对数Math.LN22的自然对数Math.LOG2E以2为底e的对数M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 61987-41:2025 EN-FR Industrial-process measurement and control - Data structures and elements in process equipment catalogues - Part 41: Lists of properties (LOPs) of pr
- 2025年食品安全与风险控制专业知识测试试卷及答案
- 2025年物业管理师职业考试试卷及答案
- 2025年传媒与传播学考试题目及答案
- 2025年计算机基础知识测试试题及答案
- 三人合伙买车协议书
- 万科物业安全题库及答案
- 七步洗手法试题及答案
- 七个模块面试题及答案
- 租临场地合同协议书
- 线上陪玩店合同协议
- 蓉城小史官考试试题及答案
- 中美关税贸易战
- 中华人民共和国农村集体经济组织法
- 中华传统文化之文学瑰宝学习通超星期末考试答案章节答案2024年
- MOOC 中国电影经典影片鉴赏-北京师范大学 中国大学慕课答案
- 医院小型压力蒸汽灭菌器的使用及管理
- 公司管理制度:格林美管理手册
- 国储铜事件的分析.
- 高绩效班组打造(课堂PPT)
- 汽车维修管理制度管理办法汇编
评论
0/150
提交评论