摘要:这边列举了个前端经典的面试题首先我们来看一下题目,都各自思考一下,自己是否能够做出来。
这边列举了5个前端经典的面试题
首先我们来看一下题目,都各自思考一下,自己是否能够做出来。然后再跟后面的答案对比一下
题目1var a = {n:1} var b = {n:2} b.x = a = {n:3} console.log(b.x) a.x = a = {n:3} console.log(a.x)题目2
(1) var start = new Date() setTimeout(function() { console.log(new Date() -start) }, 500) (2) var start = new Date() setTimeout(function() { console.log(new Date() -start) }, 500) while((new Date() - start <= 1000) {}题目3
var log = console.log var hint = window.alert var write = document.write log("123") hint("123") wirte("123")题目4
var name = "A" function getName() { return this.name } var obj = { name: "B", getName: function() { return this.name }, showName:function(a) { console.log(getName()) console.log(a()) console.log(a === arguments[0]) console.log(arguments[0]()) } } obj .showName(getName, 1)题目5
async function async1() { console.log("async1 start") await async2() console.log("async1 end") } async function async2() { console.log(async2()) } console.log("script start") setTimeout(function() { console.log("setTimeout") }, 0) async1() new Promise(function (resolve) { console.log("promise1") resolve() }).then(function() { console.log("promise2") }) console.log("script end")答案1
console.log(b.x) // {n:3} console.log(a.x) // undefined 这是跟js的优先级有关的 .的优先级最高,因此先计算左边的b.x,a.x答案2
(1) console.log(new Date() -start) // 不是一定500,而是大于等于500 主要是由于定时器的时间不一定准,这个跟异步的机制有关 当定时器的时间到了之后,执行函数会进入栈中,会根据栈中的执行任务, 依次执行(不懂的可以学习一下异步机制) (2) console.log(new Date() -start) // 大于等于1000 由于是单线程答案3
log("123") // 正常 hint("123") // 正常 write("123") // 报错 这是由于write是相当于window.write;而document.write下面应该会用到this对象, 所以会报错 应当改成window.write(document, "123")答案4
console.log(getName()) // "A" this === window console.log(a()) // "A" this === window console.log(a === arguments[0]) // true console.log(arguments[0]()) // undefined this 为argument对象答案5
script start async1 start async2 promise1 async1 end script end promise2 setTimeout 这一块跟异步有关 先同步,后异步,在回调。还有promise机制
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/107804.html
摘要:前言上一期说好的的核心模块进阶以及基本应用的使用将在号或者号与大家见面在此之前我想跟大家分享几个前端经典的面试题为什么我突然想写这么一篇文章呢今天我应公司要求去面试了下几位招聘者然后又现场整不出几个难题就搜了一下前端变态面试题,前提我并不是 前言 上一期说好的node.js的核心模块进阶以及基本web应用的使用将在2号或者3号与大家见面,在此之前我想跟大家分享几个前端经典的面试题,为什...
摘要:前言上一期说好的的核心模块进阶以及基本应用的使用将在号或者号与大家见面在此之前我想跟大家分享几个前端经典的面试题为什么我突然想写这么一篇文章呢今天我应公司要求去面试了下几位招聘者然后又现场整不出几个难题就搜了一下前端变态面试题,前提我并不是 前言 上一期说好的node.js的核心模块进阶以及基本web应用的使用将在2号或者3号与大家见面,在此之前我想跟大家分享几个前端经典的面试题,为什...
摘要:收集的一些前端面试题从面试题发现不足,进而查漏补缺,比通过面试更难得及各大互联网公司前端笔试面试题篇及各大互联网公司前端笔试面试题篇面试题个和个经典面试题前端开发面试题如何面试前端工程师很重要个变态题解析如何通过饿了么面试轻 收集的一些前端面试题 从面试题发现不足,进而查漏补缺,比通过面试更难得 1 BAT及各大互联网公司2014前端笔试面试题--Html,Css篇 2 BAT...
摘要:收集的一些前端面试题从面试题发现不足,进而查漏补缺,比通过面试更难得及各大互联网公司前端笔试面试题篇及各大互联网公司前端笔试面试题篇面试题个和个经典面试题前端开发面试题如何面试前端工程师很重要个变态题解析如何通过饿了么面试轻 收集的一些前端面试题 从面试题发现不足,进而查漏补缺,比通过面试更难得 1 BAT及各大互联网公司2014前端笔试面试题--Html,Css篇 2 BAT...
阅读 2813·2023-04-25 15:01
阅读 3011·2021-11-23 10:07
阅读 3357·2021-10-12 10:12
阅读 3443·2021-08-30 09:45
阅读 2183·2021-08-20 09:36
阅读 3566·2019-08-30 12:59
阅读 2424·2019-08-26 13:52
阅读 927·2019-08-26 13:24