关于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 相关文章推荐
js脚本学习 比较实用的基础
Sep 07 Javascript
从javascript语言本身谈项目实战
Dec 27 Javascript
ExtJs使用总结(非常详细)
Mar 22 Javascript
基于MVC3方式实现下拉列表联动(JQuery)
Sep 02 Javascript
JavaScript Array对象扩展indexOf()方法
May 09 Javascript
JS+CSS实现六级网站导航主菜单效果
Sep 28 Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
Jun 01 jQuery
详解Vue调用手机相机和相册以及上传
May 05 Javascript
JavaScript适配器模式原理与用法实例详解
Mar 09 Javascript
jQuery 常用特效实例小结【显示与隐藏、淡入淡出、滑动、动画等】
May 19 jQuery
微信小程序文章列表功能完整实例
Jun 03 Javascript
解决vue单页面应用打包后相对路径、绝对路径相关问题
Aug 14 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
基于mysql的论坛(1)
2006/10/09 PHP
php自动获取字符串编码函数mb_detect_encoding
2011/05/31 PHP
兼容ie6浏览器的php下载文件代码分享
2014/07/14 PHP
全面解析PHP验证码的实现原理 附php验证码小案例
2016/08/17 PHP
PPK 谈 JavaScript 的 this 关键字 [翻译]
2009/09/29 Javascript
jquery post方式传递多个参数值后台以数组的方式进行接收
2013/01/11 Javascript
JQuery+CSS提示框实现思路及代码(纯手工打造)
2013/05/07 Javascript
批量实现面向对象的实例代码
2013/07/01 Javascript
使用js对select动态添加和删除OPTION示例代码
2013/08/12 Javascript
jQuery 绑定事件到动态创建的元素上的方法实例
2013/08/18 Javascript
JavaScript?Apple设备检测示例代码
2013/11/15 Javascript
Bootstrap3使用typeahead插件实现自动补全功能
2016/07/07 Javascript
JavaScript 继承详解(五)
2016/10/11 Javascript
IE8利用自带的setCapture和releaseCapture解决iframe的拖拽事件方法
2016/10/25 Javascript
vue插件tab选项卡使用小结
2016/10/27 Javascript
js实现图片切换(动画版)
2016/12/25 Javascript
a标签置灰不可点击的实现方法
2017/02/06 Javascript
js弹出窗口简单实现代码
2017/03/22 Javascript
详解windows下vue-cli及webpack 构建网站(二)导入bootstrap样式
2017/06/17 Javascript
通过vue-cli来学习修改Webpack多环境配置和发布问题
2017/12/22 Javascript
jQuery md5加密插件jQuery.md5.js用法示例
2018/08/24 jQuery
解决vue的过渡动画无法正常实现问题
2019/10/31 Javascript
[07:06]2018DOTA2国际邀请赛寻真——卫冕冠军Team Liquid
2018/08/10 DOTA
让python同时兼容python2和python3的8个技巧分享
2014/07/11 Python
Python3实现发送QQ邮件功能(附件)
2020/12/23 Python
python爬虫租房信息在地图上显示的方法
2019/05/13 Python
Python实现打印实心和空心菱形
2019/11/23 Python
解决jupyter notebook import error但是命令提示符import正常的问题
2020/04/15 Python
Tensorflow--取tensorf指定列的操作方式
2020/06/30 Python
通用C#笔试题附答案
2016/11/26 面试题
设置器与访问器的定义以及各自特点
2016/01/08 面试题
工程管理英文求职信
2014/03/18 职场文书
2015年大学元旦晚会活动策划书
2014/12/09 职场文书
年度考核个人总结
2015/03/06 职场文书
浅谈Python数学建模之整数规划
2021/06/23 Python
MySQL池化框架学习接池自定义
2022/07/23 MySQL