关于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 相关文章推荐
JavaScript之appendChild、insertBefore和insertAfter使用说明
Dec 30 Javascript
jquery 插件开发 extjs中的extend用法小结
Jan 04 Javascript
用javascript读取xml文件读取节点数据
Aug 12 Javascript
JavaScript charCodeAt方法入门实例(用于取得指定位置字符的Unicode编码)
Oct 17 Javascript
jQuery弹簧插件编写基础之“又见弹窗”
Dec 11 Javascript
js右下角弹出提示框示例代码
Jan 12 Javascript
浅析javascript函数表达式
Feb 10 Javascript
CSS+jQuery实现简单的折叠菜单
Dec 20 Javascript
Vue渲染函数详解
Sep 15 Javascript
Angular 5.x 学习笔记之Router(路由)应用
Apr 08 Javascript
如何写好一个vue组件,老夫的一年经验全在这了(推荐)
May 18 Javascript
JS数组的常用10种方法详解
May 08 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写的获取各搜索蜘蛛爬行记录代码
2012/08/21 PHP
php简单分页类实现方法
2015/02/26 PHP
Javascript 阻止javascript事件冒泡,获取控件ID值
2009/06/27 Javascript
几个比较经典常用的jQuery小技巧
2010/03/01 Javascript
jQuery asp.net 用json格式返回自定义对象
2010/04/07 Javascript
19个很有用的 JavaScript库推荐
2011/06/27 Javascript
jQuery中after的两种用法实例
2013/07/03 Javascript
原生JavaScript编写俄罗斯方块
2015/03/30 Javascript
JavaScript知识点总结(十)之this关键字
2016/05/31 Javascript
mvc中form表单提交的三种方式(推荐)
2016/08/10 Javascript
JS对HTML表格进行增删改操作
2016/08/22 Javascript
jQuery插件echarts去掉垂直网格线用法示例
2017/03/03 Javascript
node.js中grunt和gulp的区别详解
2017/07/17 Javascript
js 获取html5的data属性实现方法
2017/07/28 Javascript
Vuex的初探与实战小结
2018/11/26 Javascript
详解几十行代码实现一个vue的状态管理
2019/01/28 Javascript
JavaScript随机数的组合问题案例分析
2020/05/16 Javascript
vue监听dom大小改变案例
2020/07/29 Javascript
基于scrapy实现的简单蜘蛛采集程序
2015/04/17 Python
python基于urllib实现按照百度音乐分类下载mp3的方法
2015/05/25 Python
详解Python 调用C# dll库最简方法
2019/06/20 Python
基于django传递数据到后端的例子
2019/08/16 Python
python 基于dlib库的人脸检测的实现
2019/11/08 Python
python垃圾回收机制(GC)原理解析
2019/12/30 Python
Python使用monkey.patch_all()解决协程阻塞问题
2020/04/15 Python
手把手教你如何用Pycharm2020.1.1配置远程连接的详细步骤
2020/08/07 Python
你正在寻找的CSS3 动画技术
2011/07/27 HTML / CSS
css3背景图片透明叠加属性cross-fade简介及用法实例
2013/01/08 HTML / CSS
详解HTML5将footer置于页面最底部的方法(CSS+JS)
2018/10/11 HTML / CSS
NICKIS.com荷兰:设计师儿童时装
2020/01/08 全球购物
PHP面试题集
2016/12/18 面试题
2014年会策划方案
2014/05/11 职场文书
房屋所有权证明
2014/10/20 职场文书
科技馆观后感
2015/06/08 职场文书
2016幼儿园新学期寄语
2015/12/03 职场文书
nginx基于域名,端口,不同IP的虚拟主机设置的实现
2021/03/31 Servers