网站首页 行业供求 行业产品 行业公司
行业资讯 行业网站 链接交换 网友收藏
行业供求 >> 信息展示:
Web前端面试之JavaScript典型面试题及答案
信息介绍:
  JavaScript是Web前端开发的三要素之一,也是互联网上***的脚本语言。一个合格的Web前端工程师一定要掌握JavaScript,而企业在招聘前端人员时也会考察其对JavaScript的掌握。接下来就给大家分享几个常见的JavaScript面试题及答案。

image/20191213/22c9789e039844a6aad5d8bbae94dbb9.jpeg

  1、JavaScript中 undefined 和 not defined 的区别

  JavaScript未声明变量直接使用会抛出异常:var name is not defined,如果没有处理异常,代码就停止运行了。但是,使用typeof undeclared_variable并不会产生异常,会直接返回 undefined。

  var x; // 声明 xconsole.log(x); //output: undefined

  console.log(typeof y); //output: undefined

  console.log(z); // 抛出异常: ReferenceError: z is not defined

  2、在JavaScript中创建一个真正的private方法有什么缺点?

  每一个对象都会创建一个private方法的方法,这样很耗费内存

  代码示例:

  var Employee = function (name, company, salary) {

  this.name = name ||  ;

  this.company = company ||  ;

  this.salary = salary || 5000;

  // Private method

  var increaseSalary = function () {

  this.salary = this.salary + 1000;

  };

  // Public method

  this.dispalyIncreasedSalary = function() {

  increaseSlary();

  console.log(this.salary);

  };

  };

  // Create Employee class object

  var emp1 = new Employee( John , Pluto ,3000);

  // Create Employee class object

  var emp2 = new Employee( Merry , Pluto ,2000);

  // Create Employee class object

  var emp3 = new Employee( Ren , Pluto ,2500);

  在这里emp1、emp2、emp3都有一个increaseSalary私有方法的副本,所以除非必要,非常不推荐使用私有方法。

  3、怎么判断一个Object是否是数组(array)?

  方法一

  使用Object.prototype.toString来判断是否是数组

  function isArray(obj){

  return Object.prototype.toString.call( obj ) === '[object Array]';

  }

  这里使用call来使toString中this指向obj,进而完成判断。

  方法二

  使用原型链来完成判断

  function isArray(obj){

  return obj.__proto__ === Array.prototype;

  }

  基本思想是利用实例,如果是某个构造函数构造出来的那么它的__proto__是指向构造函数的 prototype属性。

  方法三

  利用JQuery

  function isArray(obj){

  return $.isArray(obj)

  }

  JQuery isArray的实现其实就是方法1。

  4、下面代码输出什么?

  var output = (function(x){

  delete x;

  return x;

  })(0);

  console.log(output);

  输出是0。delete操作符是将object的属性删去的操作。但是这里的x是并不是对象的属性,delete操作符并不能作用。

  5、如何理解JS中的this关键字?

  JS初学者总是对this关键字感到困惑,因为与其他现代编程语言相比,JS中的这this关键字有点棘手。“this”一般是表示当前所在的对象,但是事情并没有像它应该的那样发生。JS中的this关键字由函数的调用者决定,谁调用就this就指向哪个。如果找不到调用者,this将指向windows对象。

  6、如何在JavaScript中比较两个对象?

  对于两个非原始值,比如两个对象(包括函数和数组),== 和 === 比较都只是检查它们的引用是否匹配,并不会检查实际引用的内容。

  例如,默认情况下,数组将被强制转型成字符串,并使用逗号将数组的所有元素连接起来。所以,两个具有相同内容的数组进行==比较时不会相等:

  var a = [1,2,3];

  var b = [1,2,3];

  var c = 1,2,3 ;

  a == c; // true

  b == c; // true

  a == b; // false

  对于对象的深度比较,可以使用 deep-equal 这个库,或者自己实现递归比较算法。

  7、解释原型设计模式

  原型模式可用于创建新对象,但它创建的不是非初始化的对象,而是使用原型对象(或样本对象)的值进行初始化的对象。原型模式也称为属性模式。

  原型模式在初始化业务对象时非常有用,业务对象的值与数据库中的默认值相匹配。原型对象中的默认值被复制到新创建的业务对象中。

  经典的编程语言很少使用原型模式,但作为原型语言的 JavaScript 在构造新对象及其原型时使用了这个模式。

  当然,以上只是JavaScript经典面试题的一小部分,更是Web前端工程师面试的一小部分。如果你想成为一个高薪的Web人才,不仅要熟练掌握扎实的理论知识,还要具备较多的项目实战经验。

欢迎具体了解:郑州Web前端培训http://zz.mobiletrain.org/html5/

信息明细:
名 称:Web前端面试之JavaScript典型面试题及答案
类 型: 供应
类 别: 教育考试 其他培训
地 区: 河南 郑州
用 户: forevee
日 期: 2021-05-24 17:01:20
发布IP: 117.159.15.221
参考图片:

联络方式:
0371-55191750

友情提示:
    信息由用户自行发布,采用请谨慎,我们鼓励您当面交易。如有不符合法规或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们。名站在线只为传递信息,我们不做任何双方证明,也不承担任何法律责任。 信息转载,请标明来源于www.fwol.cn ,谢谢。

其它相似链接:
广东双面胶价格_深圳离型膜价格_深圳市宝安区福永铭星电子应用材...
广东双面胶价格_深圳离型膜价格_深圳市宝安区福永铭星电子应用材料行 进口双面胶系列3M双面胶带,日东双面胶NI,积水双面胶带SEKISUI,德莎双面胶TESA,索尼双面胶SONY,综研双面胶,大日本双面胶DIC,日立双面胶Hi- Bon,寺岗双面胶TERAOKA等。 胶带模切加工系列各种双面胶带模切加工,单面离型纸复合,根据客户提供图纸模切各种形状,尺寸精准,可分条、切片、冲压模切、复合材料后模切加工各种胶贴产品。 铭星电子应用...

南开区安装水晶卷帘门辉煌腾达
18202568884 15122536870 天津太行卷帘门厂是**的天津卷帘门厂,专业生产天津快速卷帘门快速卷帘门,天津水晶卷帘门、天津电动卷帘门、不锈钢卷帘门,型材卷帘门、防火卷帘门、保温卷帘门、抗风卷帘门、平卧钢质防火卷帘门、侧向钢质防火卷帘门、双轨无机特级防火卷帘门带卷帘式安全门防火卷帘门、快速卷帘门;防火门、隔音门、工业提升门、保温门、工业滑升门等十几种产品。天津太行卷帘门厂是天津地区水晶卷帘门、电动卷...

东丽区安装水晶卷帘门技术实践
18202568884 15122536870 天津太行是一家集设计、安装,维修各种电动卷帘门,水晶卷帘门,欧式卷帘门,不锈钢卷帘门,澳铝合金卷帘门,式静音卷帘门,喷塑彩板卷帘门,钢质防火卷帘门,镀锌钢板卷帘门,镀锌网状卷帘门,不锈钢拉闸门,普通镀锌拉闸门,豪华喷塑拉闸门,工业车库门,不锈钢伸缩门,电动车库门,翻板车库门,铸铝伸缩门,铝合金伸缩门,电动伸缩门,铁艺大门,围栏,护窗,及其他铁艺制品加工为一体的新型企业...

磁栅传感器,安装间隙高达0.8
非接触敞开式磁电系统 超小型读数头 **的抗污能力 读数头重量轻<10g 数字和模拟输出可选 分辨率从1um-50um 集成 Set-up LED 粘贴单零点可选 90m以内无接缝超长测量 数字量输出 MRH20X-1um MRH20C-2um MRH20D-5um MRH20E-10um MRH20F-20um MRH20G-25um MRH20K-50um 模拟量输出 MRH20B 1Vp-p 差分输出 英诺伺服Maglin MRH20系列磁栅线性编码器...

印刷喷绘行业专用磁栅编码器
非接触敞开式磁电系统 紧凑的安装结构 **的抗污能力 重量低<5g 增量型数字输出 分辨率**11520 LPI 可选集成 set-up LED 30m以内无接缝超长测量 英诺伺服Maglin 4000系列磁栅线性编码器系统是专门为印刷、喷绘、打印等用LPILines Per Inch或者DPIDots Per Inch为基本位移单位的行业开发出的一种非接触敞开式磁栅编码器系统,用来做精确的位置反馈。系统采用特殊磁性尺带作为系统的标尺,即使在大于0....


相关评论:
(欢迎网友发表评论,请注意网络文明)
(不支持 HTML 显示,请勿发HTML代码)
(评论需审核后才能显示)

本站推荐:
厦门舞蹈培训
400电话
兰州牛肉面加盟
南通华美木材检验鉴定有限
我要赛|赛事报名|马拉松
上海有盛净化科技有限公司
陕西中国旅行社有限责任公
石祥宇虚拟国度-Cult
苏州市荣氏金属制品厂
抢手的环保节能隔墙板**
便利的力士乐A4VG40
成都有保障的新鲜虫草供应
具有口碑的冷风机供应商_
格力南阳格力空调售后维修
电磁灶厂家***实地考察
1746-IA8
10月与你相约-2020
1414CTP03PDD
02-348786销售进
3HNE00471-1
上海松江CAD培训
三洋南昌三洋洗衣机维修电
激光去眼袋的优点有哪些?

电脑版

Copyright 2005-2025 名站在线[fwol.cn]版权所有
经营许可证:粤ICP备17047754号