0


春招季,这份前端学习及面试指南请查收

c748a38ea46c41f7805eb28adebcbb12.png

大家好,我是剽悍一小兔,一个在IT行业摸爬滚打六年之久的码农。主要从事Java后端,和部分前端业务的设计与开发,参与过多个大型金融,政府系统的开发,也是《JavaScript百炼成仙》的作者。

正值春招季,让我们就几个前端的热点问题来简单聊一聊吧~

一、关于【JavaScript在工作中的实际使用】

1,掌握哪些知识可以快速上手代码,可以入职后再慢慢学习的是?

这是一个很好的问题,我相信很多刚学习前端的小伙伴都有一样的疑问。就我个人而言,刚开始学习前端,JavaScript的基础语法自然不必多说,然后就是如何定义变量,函数,函数传参,闭包那些。

工作中实际写代码比较多的,jQuery时代就是操作dom元素,用JS去操作页面上的元素,比如控制按钮的显隐,给某个div添加固定的内容什么的。

然后就是对数据的操作,这个部分是重中之重,核心就是利用Ajax去调用后台的接口,得到返回的数据,去填充某个list。

然后呢,无非就是操作某一条数据,比如做审核,那就得先选中list里面的某一条数据,而且不能多选,选了超过一条或者不选都不对,要有JS的控制,也可以用组件的属性去设置。

接着,如何获取选中行的数据呢?这个也要会JS的控制。比如写个什么grid.getSelectedRow()之类的代码,得到某一条数据,也就是JSON对象,再通过Ajax调用后台的接口,具体后台什么逻辑我们不关心,我们所做的,基本就是如此。

到了今天vue和react的时代,也是差不多的,就是写法有所不同。

现在这个时代,一个页面,详细到每一个css ,每一个div都让你从0开始画的情况不多见,更多的是让你运用框架,比如elementUI,antd之类的UI框架。

掌握基本的JS语法,会一到两门UI框架,做过一个增删改查,其实就已经具备了现在大部分公司对前端的能力要求。

至于提高,比如对框架原理的理解,MVVM,数据绑定原理等等,可以在工作中慢慢理解。

无奈现在行业内卷,只是会做项目可能不一定过得了面试,所以必要的面经还是需要的,可即便如此,前端比起已经卷上天的Java还是要好一些的。

2,JavaScript的就业前景好吗?工作过程中主要用到哪些?用在哪些方面?可以稍微举例说明一下吗?

工作中实际应用到的部分,可以参考我对于上一个问题的回答。就业前景的话,那必须很好,虽然现在IT行业都卷,但是比起卷上天的java,前端还是要好一些的。

3,在实际工作项目中,要求对react、vue等框架有深入了解吗?一般都会用到哪些javascript的高级应用、编程技巧或设计模式啊?另外有工作中常用的封装好的小工具库可以分享吗?

实际工作的话,这些框架会用就行。深入了解当然更好,因为那可以让你用的更熟练,更得心应手。至于JavaScript的高级应用,编程技巧和设计模式,就我个人而言,用的真的不多。实际工作我们主要就是写写业务代码,设计模式虽好,但是我们一般不推荐滥用。

因为,这些技巧更多的是用来编写JavaScript框架的,我们正常写写业务代码完全不需要,强行使用只会徒增代码的复杂程度。

不过呢,适当的编程技巧还是需要的,比如axios的二次封装啊,常用工具js的封装啊,自定义业务组件方便复用啊,这些技巧还是需要的。

还有就是某些复杂的场景,掌握闭包的使用也是非常有必要的哈,用闭包的话,对付某些疑难杂症可能会有奇效。

二、关于【适合小白的前端学习路线】

1,三大框架都要学吗?还是跟随主流angural?

重点学一个即可,vue和react都可以的,angural现在用得少一些。

2,怎么迅速搭建一个网站首页,有可以现成参考学习的短一点的代码吗?(主要就是需要有一个页面,后期再仔细处理这种情况)

这个可以推荐看一下我之前的《文章发布系统》教程,讲得比较细。https://blog.csdn.net/weixin_39570751/category_11706076.htmlhttps://blog.csdn.net/weixin_39570751/category_11706076.html

虽然比较基础,但是很适合初学者,这套教程最早发在简书的,全网阅读到现在少说有好几十万了。

后来我还录制了一套视频。

JavaWeb项目,JSP版文章发布系统_哔哩哔哩_bilibili

3,微信小程序是否适合前端入门?

适合,不过最好先学JavaScript基础。

4,前端学习过程中良好的学习方法都有什么?作为计算机专业的学生应该具备哪些素质?

做项目,不管是谁问我这个问题,我的回答都是一样的。就是我们一定要去做项目,不要干巴巴地去学一个个知识点。以我当年的经历。

在我前端还是个半吊子的时候,就天天看视频学做项目,因为只有项目才可以把所学的知识点一个个串起来。

作为计算机专业的学生,我个人感觉,最重要的还是需要具备自我学习,搜索、整合资源的能力。

现在网络资源发达,相比于14,15年真的是好太多,各大培训机构的视频都能找到免费公开版的,众所周知,某小破站是个学习编程的网站。

那么这些资源,都可以自己花时间去整合,指定合理的学习计划。学会了就是外挂般的存在,当老师还是在讲JavaScript的时候,你已经vue用得飞起了,岂不美哉?

5,想了解下前端工作者的实况和真正需要应用的技术内容?因为网上很多言论都贬低前端,认为前端只是简单机械的工作,只要简单掌握HTML和CSS等就可以了,根本不用像后台开发那样使用架构、算法等深层次的东西。

这是对前端的偏见,虽然现在TS的流行能看出来前端正有意无意地往后端模式靠拢,但前端的地位还是无法动摇的,毕竟现在前后端分离已成必然的趋势和事实。

前端的工作也绝不止HTML和css那么简单,在项目复杂化,工程化的同时,对前端的能力考验还是很大。相信今后前端会发展得越来越好,越来越完善。

三、关于【前端面试相关】

1,面试过程中,有什么回答问题的技巧,如何吸引面试官关注到自身优势,拿到更高薪的offer?

不管面试官问你什么,不会的其实可以不用逞强,(我面试别人的时候就不喜欢那种明明不会还一个劲地东扯西扯,说一些有的没的),会的题目可以慢慢把面试官引导到你熟悉的领域。然后主动出击,把你知道的说出来。

很多时候,面试官其实希望你多说一点,如果你总是一问一答,冷场了,我就只能再挑一些新的问题来问你,不知道你能明白我的意思吗?

2,前端比较看重什么技术能力?

独立分析和解决问题的能力,前端入门还是相对简单的,工作中总是会出现一些状况,比如样式不对啦,数据展示错误啦。

那么,你能不能迅速定位问题,解决问题,必要的话快速甩锅给后端的能力是很重要的。

3,Web中高级前端面试题一般以哪种类型题目为主啊?方便刷题时着重下

这个主要看面试官心情的,我只能根据大部分粉丝的反馈做个大概的举例。

比较有难度的:diff算法,vue3和vue2的区别,为什么设计虚拟dom,性能优化等。

难度一般但高频:闭包,vue自动绑定原理,组件传参,promise,JavaScript事件环等。

冷门的我也不知道有啥。。。

创作者个人解惑:

某同学提问:
JavaScript明明是一个全栈语言,既可以写前端,又可以依靠nodejs环境写后端,但是我感觉很多人瞧不起我们学js的,我甚至自身也有点怀疑我学了js以后就只是去写网页吗。

别人说,你就是个写网页的,有什么了不起,我也因此感到很无力,因为我不知道学了js那么多东西能干啥,还不是把数据拿到页面去展示给用户看。

目前我已经学到VUE3的框架了,一路学习过程包括技术有:html5、css3、less、js基础、js高级、Bootstrap、Ajax、nodejs、mongodb、ES6ES11、VUE2VUE3,看的是尚硅谷的教程,VUE3差不多快看完了,也一直在写博客记录学习过程。

学习期间我用js写过前后端的一些小玩意,懂得前端发请求,后端响应数据,用过nodejs的express、mongoose框架,在寝室做过局域网的服务器,也就是把我的电脑当服务器,室友可以访问我电脑的资源,当然只是很简陋的网站,没有多大实用性功能,纯是为了了解前后端的交互过程。
我其实想知道的是在工作中。

我们就只是需要把网页做的漂亮点就够了吗,我学多了反而更困惑了,甚至不知道nodejs到底要不要深入学习,以后工作是专门有nodejs的岗位吗,是不是前端就专门写网页,不需要干涉后端,也就是nodejs,还是说项目经理既你让你写前端又让你写后端。

然后我就是想知道js要不要去学习数据结构与算法之类的,因为我感觉数据展示在页面不需要学习那么多呀,甚至感觉一门语言居然只是来处理网页交互的大材小用。目前很是困惑,我现在已经大三了,不知道要不要转型后端,换一门新的语言,还是继续深研前端,可是我越深造越觉得大材小用。

我是职高毕业考进某大学(211)的,现在大三在读,我在高中也学的计算机,当时是C语言,在高中学的全是基本语法知识,不过很细节,细节到抓狂,因为高考要考C语言,大学期间接触过Java。

但是学校讲课都太快且太浅,我学了但是也没多大兴趣,然后我在大二下学期接触js时,一下爱上了前端这个领域(学校没有专门开js的课,我全是自学),因为有自己写出来的页面的东西,看得到的东西,让我很有成就感,再者就是我不喜欢别人都在学的东西,所以我就开始自学前端。

说了这么多,技术多当然好,只是目前情况我是应该专门往一个方向发展还是重新去学习Java(Java快忘记完了,这个语言的是不是特别卷,我又怕卷不过他们,现在已经大三了,我是不是在毕业前也学不到什么了,而且这个暑假还需要找实习)。

其实我现在有几门比较感兴趣的后端语言,比如python、go、rust,python火肯定有它的原因的,听说写一些自动化的工具特别有意思,但是它是解释执行,运行速度慢,我又因为这个不知道要不要学习;

然后go语言也被吹的很厉害,因为它的天生并发能力,我也认为以后go会是主流服务器端语言,肯定能打败Java;其次是rust,听说它的安全性特别好,并且运行速度与C不相上下,但是学习起来过程陡峭。

最后问一句,我到底是深研前端还是转型后端,因为在世人的眼中他们看不起前端开发,我身边的同学也是,我很是烦恼(我想说你不了解一个技术的时候,有什么资格去评判语言的好坏或是一个领域的好坏,有本事自己去创一门语言呀)。

感谢这位同学的提问,我挑其中的几个要点回答一下:

1.前端只是画画页面,展示数据?没前途?

当然不是,不知道这个论调是怎么传出来的。 前端不仅仅是HTML和css那么简单,重点是调用框架完成页面,以及和后台的交互。有的人可能觉得前端就是调一下接口,把后台的数据展现出来,前端的作用只是把页面显示得好看一些?当然不是这么简单的啊,后台主要是处理系统的业务逻辑以及和数据库交互,但是前端是直接展现给用户的,有什么改动第一时间是需要前端出马的,其重要性不言而喻。

项目越大,前端的重要程度就越高,那么多的页面,前端处理业务的复杂程度未必就比后端低。

就目前而言,我所在的地方就是招前端很困难,Java后端一抓一把,真不是危言耸听,因为我自己也常面试和筛选简历,Java的是真卷,而前端是真的难招。

2.学前端要不要学数据结构和算法?

以后去大厂面试肯定需要,然后这个东西其实和前端没有太大关系,更多的是一种思维逻辑,因为一般面试算法都是不限语言种类的。

3.nodejs要不要深入学习

虽然node是js进军后端市场的基石,但是,放眼国内所有IT公司,真正完全用node做后端的真的不多。在大部分的情况,还是Java做后端的比较多。nodejs我个人感觉可以不去深入学习,假如你以后工作真的完全用node去开发,到时候再说。

4.学的越多反而越迷茫了

有这种感觉很正常,因为你还没有真正去公司里面待过,也不清楚自己到底要学多少东西才能胜任公司里面给你分配的活。我从你的表述来看,你的基础应该还是很扎实的。跟着网上那种全套的视频教程学肯定没有问题。

当你以后真正进入公司,发现工作的难度和量大约只有你学习时期的大约20%,你可能就会发出一声叹息:原来工作也不过如此嘛。

这是很正常的,因为大部分公司是招你进去去干活的,写业务的,不是让你一个新人去研发公司架构的。都是现成的东西,你要做的就是在别人的教导下,手把手的指挥下去添砖加瓦。到时候你恐怕要惊呼:就这?

所以,放松心态吧,好好享受大学时光。

如果你还有其他疑惑,欢迎在底下评论留言,知无不言~

标签: javascript

本文转载自: https://blog.csdn.net/weixin_39570751/article/details/123686773
版权归原作者 剽悍一小兔 所有, 如有侵权,请联系我们删除。

“春招季,这份前端学习及面试指南请查收”的评论:

还没有评论