关于js原型的面试题讲解


Posted in Javascript onSeptember 25, 2016

今天遇到关于javascript原型的一道面试题,现分析下:

原题如下:

function A(){
}
function B(a){
this.a = a;
}
function C(a){

if(a){
this.a = a;

}
}
A.prototype.a = 1;
B.prototype.a = 1;
C.prototype.a = 1;
 
console.log(new A().a);
console.log(new B().a);
console.log(new C(2).a);

分析:

console.log(new A().a);

//new A()为构造函数创建的对象,本身没有a属性,所以向它的原型去找,发现原型的a属性的属性值为1,故该输出值为1;

console.log(new B().a);

//new B()为构造函数创建的对象,该构造函数有参数a,但该对象没有传参,故该输出值为undefined;

console.log(new C(2).a);

//new C()为构造函数创建的对象,该构造函数有参数a,且传的实参为2,执行函数内部,发现if为真,执行this.a = 2,故属性a的值为2;

故这三个的输出值分别为:1、undefined、2.

以上就是小编为大家带来的关于js原型的面试题讲解的全部内容了,希望对大家有所帮助,多多支持三水点靠木~

Javascript 相关文章推荐
Extjs学习笔记之八 继承和事件基础
Jan 08 Javascript
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
Jan 12 Javascript
简介JavaScript中Boolean.toSource()方法的使用
Jun 05 Javascript
jquery制作图片时钟特效
Mar 30 Javascript
javascript高级编程之函数表达式 递归和闭包函数
Nov 29 Javascript
jQuery实现验证码功能
Mar 17 Javascript
深入理解Angularjs中$http.post与$.post
May 19 Javascript
JS实现仿饿了么在浏览器标签页失去焦点时网页Title改变
Jun 01 Javascript
JavaScript使用FileReader实现图片上传预览效果
Mar 27 Javascript
浅谈Vue初学之props的驼峰命名
Jul 19 Javascript
JavaScript实现世界各地时间显示
Sep 07 Javascript
微信小程序实现拼图小游戏
Oct 22 Javascript
前端设计师们最常用的JS代码汇总
Sep 25 #Javascript
JavaScript使用Range调色及透明度实例
Sep 25 #Javascript
JavaScript中原型链存在的问题解析
Sep 25 #Javascript
JavaScript制作颜色反转小游戏
Sep 25 #Javascript
JavaScript实现简单的日历效果
Sep 25 #Javascript
javascript实现根据汉字获取简拼
Sep 25 #Javascript
概述VUE2.0不可忽视的很多变化
Sep 25 #Javascript
You might like
php用户注册页面利用js进行表单验证具体实例
2013/10/17 PHP
php的ZipArchive类用法实例
2014/10/20 PHP
PHP中使用Imagick实现各种图片效果实例
2015/01/21 PHP
PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图
2017/05/15 PHP
JavaScript写的一个DIV 弹出网页对话框
2009/08/14 Javascript
禁用JavaScript控制台调试的方法
2014/03/07 Javascript
使表格的标题列可左右拉伸jquery插件封装
2014/11/24 Javascript
js查看一个函数的执行时间实例代码
2015/09/12 Javascript
JavaScript计算值然后把值嵌入到html中的实现方法
2016/10/29 Javascript
微信小程序 支付功能(前端)的实现
2017/05/24 Javascript
jqgrid实现简单的单行编辑功能
2017/09/30 Javascript
javaScript动态添加Li元素的实例
2018/02/24 Javascript
Vue3.0结合bootstrap创建多页面应用
2019/05/28 Javascript
通过说明与示例了解js五种设计模式
2019/06/17 Javascript
解决LayUI加上form.render()下拉框和单选以及复选框不出来的问题
2019/09/27 Javascript
Vue-Cli项目优化操作的实现
2019/10/27 Javascript
搭建Vue从Vue-cli到router路由护卫的实现
2019/11/14 Javascript
Python(Tornado)模拟登录小米抢手机
2013/11/12 Python
Python yield 使用浅析
2015/05/28 Python
Python使用win32com模块实现数据库表结构自动生成word表格的方法
2018/07/17 Python
对python中字典keys,values,items的使用详解
2019/02/03 Python
Django实现web端tailf日志文件功能及实例详解
2019/07/28 Python
django之导入并执行自定义的函数模块图解
2020/04/01 Python
PyQt5-QDateEdit的简单使用操作
2020/07/12 Python
Python timeit模块原理及使用方法
2020/10/10 Python
世界上最好的儿童品牌:AlexandAlexa
2018/01/27 全球购物
英国领先的维生素和营养补充剂直接供应商:Healthspan
2019/04/22 全球购物
什么是lambda函数
2013/09/17 面试题
卫校毕业生自我鉴定
2013/10/31 职场文书
物业客服专员岗位职责
2013/11/30 职场文书
悬空寺导游词
2015/02/05 职场文书
党支部创先争优公开承诺书
2015/04/30 职场文书
导游词之云南丽江-泸沽湖
2019/09/26 职场文书
2019年最新感恩节祝福语(28句)
2019/11/27 职场文书
react合成事件与原生事件的相关理解
2021/05/13 Javascript
基于Redission的分布式锁实战
2022/08/14 Redis