第一章链接:初识JavaScript - 章节课后练习题及答案

第二章链接:JavaScript 基础(上) - 章节课后练习题及答案

第三章链接:JavaScript 基础(下) - 章节课后练习题及答案

第四章链接:JavaScript 函数 - 章节课后练习题及答案

第五章链接:JavaScript 对象 - 章节课后练习题及答案

第六章链接:DOM(上) - 章节课后练习题及答案

第七章链接:DOM(下) - 章节课后练习题及答案

第八章链接:BOM - 章节课后练习题及答案

第九章链接:JavaScript网页特效 - 章节课后练习题及答案

第十章链接:jQuery(上) - 章节课后练习题及答案

第十一章链接:jQuery(下) - 章节课后练习题及答案

第十二章链接:JavaScript面向对象(上) - 章节课后练习题及答案

注:使用的是人民邮电出版社出版的《JavaScript+jQuery 交互式 Web 前端开发》书籍。


一、填空题

1、在原型对象里面有一个______属性,该属性指向了构造函数。

2、直接通过函数名调用函数时,this指向的是______。

3、利用JavaScript提供的两种方式可手动控制this的指向,它们分别是______和______。

4、______方法的含义是绑定,用于在调用函数前指定this的含义,实现提前绑定的效果。

5、除了在JavaScript程序出现错误时自动抛出错误对象,用户也可以使用______关键字手动抛出错误对象。

6、在错误处理中_____表示调用eval()函数错误。

二、判断题

1、构造函数主要用来创建对象,并为对象的成员赋初始值。(  )

2、在JavaScript中,每个对象都有一个__proto__属性,这个属性指向了对象的原型对象。(  )

3、bind()方法的含义是绑定,用于在调用函数前指定this的含义,实现提前绑定的效果。(  )

4、每个构造函数都有一个prototype属性指向原型对象,原型对象通过constructor属性指向构造函数。(  )

三、选择题

1、下列选项中,描述错误的是(  )。

A. __proto__是一个标准的属性

B. 每个对象都有一个__proto__属性

C. 通过实例对象的constructor属性就可以访问实例对象的构造函数

D. 原型对象也是对象

2、下面选项中,不能用来改变this指向的是(  )。

A. apply()        B. call()        C. method()         D. bind()

3、下面选项中,描述错误的是(  )。

A. 使用构造方法创建对象虽然很简单、方便,但是与类存在一定的区别

B. 在静态方法中不能使用this访问实例对象,因为静态方法与实例对象有关联

C. 在面向对象中有静态成员和实例成员的概念,实例成员是指实例对象的成员

D. 在JavaScript中,每个构造函数都有一个原型对象存在

4、Object的原型对象的__proto__属性为(  )。

A. null        B. undefined        C. NaN        D. String

5、关于对象继承,下列描述错误的是(  )。

A.在ES 6中,继承是通过定义两个类,然后子类用extends关键字继承父类实现的

B.ES 6提供了class语法用来定义类

C.类和构造函数的使用非常相似,不可以互相替代

D.若要实现子类继承父类的方法,不能直接将父类原型对象赋值给子类原型对象

四、简答题

1、请简单介绍什么是原型对象。

2、请解释说明如何使用bind()和call()。

五、编程题

利用构造函数编写一个计算器模块,提供加、减、乘、除运算方法。


参考答案

一、填空题

1、constructor

2、全局对象window

3、apply()方法和call()方法

4、bind()

5、throw

6、EvalError

二、判断题

1、对        2、对      3、对        4、对

三、选择题

1、A         2、C       3、B        4、C        5、C

四、简答题

1、请简单介绍什么是原型对象。

在JavaScript中,每个构造函数都有一个原型对象存在,这个原型对象通过构造函数的prototype属性来访问,如果不知道对象的构造函数,则可以用__proto__属性直接访问原型对象;如果知道了一个对象的构造函数,可以用构造函数的prototype属性访问原型对象;

2、请解释说明如何使用bind()和call()。

call()方法可以更改函数内的this指向,它的第1个参数用来传入一个对象,它的第2个参数表示调用函数时传入的参数,call()使用第2~N个参数来表示调用函数时传入的函数。

bind()方法的含义是绑定,与call()用法基本类似,不同的是,bind()方法用于在调用函数前指定this的含义,实现提前绑定的效果,bind()方法在绑定时,还可以提前传入调用函数时的参数。

五、编程题

<body><!-- 计算器页面结构 --><input type="text" id="num1"><!-- 定义“+、-、*、/”符号 --><select name="" id="fuhao"><option value="1" onclick="">+</option><option value="2" onclick="">-</option><option value="3" onclick="">*</option><option value="4" onclick="">/</option></select><input type="text" id="num2"><!-- 定义“=”符号 --><input type="button" id="result" value="="><!-- 计算结果展示 --><input type="text" id="showNum"><script>function Calc(showNum, result) {this.showNum = showNum;this.result = result;// 默认计算结果为空document.getElementById(this.showNum).value = ''document.getElementById(this.result).onclick = function () {// 获取数字num1、num2和计算符号var fuhao = document.getElementById('fuhao').value;var num1 = document.getElementById('num1').value;var num2 = document.getElementById('num2').value;if (fuhao == "1") {document.getElementById('showNum').value = parseInt(num1) + parseInt(num2)}if (fuhao == "2") {document.getElementById('showNum').value = parseInt(num1) - parseInt(num2)}if (fuhao == "3") {document.getElementById('showNum').value = parseInt(num1) * parseInt(num2)}if (fuhao == "4") {document.getElementById('showNum').value = parseInt(num1) / parseInt(num2)}}}// 初始化计算器var calc = new Calc('showNum', 'result')</script></body>

十三、JavaScript面向对象(下) - 章节课后练习题及答案相关推荐

  1. 十二、JavaScript面向对象(上) - 章节课后练习题及答案

    第一章链接:初识JavaScript - 章节课后练习题及答案 第二章链接:JavaScript 基础(上) - 章节课后练习题及答案 第三章链接:JavaScript 基础(下) - 章节课后练习题 ...

  2. 十一、jQuery(下) - 章节课后练习题及答案

    第一章链接:初识JavaScript - 章节课后练习题及答案 第二章链接:JavaScript 基础(上) - 章节课后练习题及答案 第三章链接:JavaScript 基础(下) - 章节课后练习题 ...

  3. 十、jQuery(上) - 章节课后练习题及答案

    第一章链接:初识JavaScript - 章节课后练习题及答案 第二章链接:JavaScript 基础(上) - 章节课后练习题及答案 第三章链接:JavaScript 基础(下) - 章节课后练习题 ...

  4. 五、JavaScript 对象 - 章节课后练习题及答案

    第一章链接:初识JavaScript - 章节课后练习题及答案 第二章链接:JavaScript 基础(上) - 章节课后练习题及答案 第三章链接:JavaScript 基础(下) - 章节课后练习题 ...

  5. 四、JavaScript 函数 - 章节课后练习题及答案

    第一章链接:初识JavaScript - 章节课后练习题及答案 第二章链接:JavaScript 基础(上) - 章节课后练习题及答案 第三章链接:JavaScript 基础(下) - 章节课后练习题 ...

  6. 六、DOM(上) - 章节课后练习题及答案

    第一章链接:初识JavaScript - 章节课后练习题及答案 第二章链接:JavaScript 基础(上) - 章节课后练习题及答案 第三章链接:JavaScript 基础(下) - 章节课后练习题 ...

  7. 八、BOM - 章节课后练习题及答案

    第一章链接:初识JavaScript - 章节课后练习题及答案 第二章链接:JavaScript 基础(上) - 章节课后练习题及答案 第三章链接:JavaScript 基础(下) - 章节课后练习题 ...

  8. 一、初识JavaScript - 章节课后练习题及答案

    笔记链接:一.初识JavaScript - JavaScript+jQuery 笔记 注:使用的是人民邮电出版社出版的<JavaScript+jQuery 交互式 Web 前端开发>书籍. ...

  9. 计算机网络导论课后答案,课后练习题参考答案 计算机网络导论.doc

    课后练习题参考答案 计算机网络导论 1. 人类的信息文明史分那几个阶段?它的发展有什么特点? 1)语言的产生:从简单的声音交换信息,到使用更复杂的语言来交换信息. 2)文字的产生:使用一些特定的符号来 ...

最新文章

  1. Advanced Bash-Scripting Guide 学习笔记一
  2. 程序员---我的读书列表
  3. python3循环一直到一个值结束_一步一步学Python3(小学生也适用) 第十七篇:循环语句for in循环...
  4. 单内核OS与微内核OS结构比较
  5. 使用 PotPlayer 搭配 SVP 4 播放60帧电影
  6. java 字符串长度截取,实现java字符串长度截取功能,java字符串长度截取
  7. 内存分配方式与内存分配算法
  8. oracle如何删除用户的表空间,Oracle 删除用户和表空间
  9. JS实现当前日期是第几周
  10. 三个角度细谈:如何发挥朋友圈广告的威力
  11. 数学思想:4、数学归纳法
  12. 70个居家做饭小技巧
  13. 英语口语8000句-生病、受伤时
  14. 超好玩的mac模拟经营游戏:巨型水族馆中文版
  15. PTG DAO 生态
  16. linux环境变量自定义环境变量
  17. Bios读文件与Grub(bootload)和initrd和内核对文件系统驱动的支持
  18. 内网穿透 NPS工具实现内网穿透
  19. Flutter AppBar 工具栏、导航栏
  20. 这5个视频素材网站一定要收藏

热门文章

  1. gnome_GNOME入门建议
  2. mysql 员工表部门表查询
  3. Type-c诱骗取电芯片大全
  4. 如何花更少的时间学习更多的知识
  5. jquery mobile php,jQuery Mobile 实例
  6. 课程设计《我们约会吧》补充报告 20155307刘浩
  7. CISCO路由器配置基础(2)
  8. .VS文件夹无法删除
  9. This file's format is not supported or you don't specify a correct format. 解决办法
  10. 闻泰收购安世半导体100%股权方案出炉