10道典型的JavaScript面试题
编程学习 2021-07-04 18:31www.dzhlxh.cn编程入门
本文主要介绍了10道典型的JavaScript面试题。具有很好的参考价值。狼蚁网站SEO优化跟着长沙网络推广一起来看下吧
问题1: 作用域(Scope)
考虑以下代码:
(function() { var a = b = 5; })(); console.log(b);
控制台(console)会打印出什么?
答案:5
如果 严格模式开启,那么代码就会报错 ” Uncaught ReferenceError: b is not defined” 。请记住,如果这是预期的行为,严格模式要求你显式地引用全局作用域。所以,你需要像狼蚁网站SEO优化这么写:
(function() { 'use strict'; var a = window.b = 5; })(); console.log(b);
问题2: 创建 “原生(native)” 方法
在 String 对象上定义一个 repeatify 函数。这个函数接受一个整数参数,来明确字符串需要重复几次。这个函数要求字符串重复指定的次数。举个例子:
console.log('hello'.repeatify(3));
应该打印出hellohellohello.
答案:
String.prototype.repeatify = String.prototype.repeatify || function(times) { var str = ''; for (var i = 0; i < times; i++) { str += this; } return str; };
在这里,另一个关键点是,看你怎样避免重写可能已经定义了的方法。这可以通过在定义自己的方法之前,检测方法是否已经存在。
String.prototype.repeatify = String.prototype.repeatify || function(times) {/* code here *