-
當前位置:首頁 > 創(chuàng)意學院 > 技術(shù) > 專題列表 > 正文
前端項目優(yōu)化(前端項目優(yōu)化方案)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于前端項目優(yōu)化的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計劃、工作報告、論文、代碼、作文、做題和對話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準,寫出的就越詳細,有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、前端開發(fā)工程師主要做什么
1、負責網(wǎng)站的前端開發(fā),實現(xiàn)產(chǎn)品頁面交互和功能實現(xiàn);
2、與程序開發(fā)人員密切合作,制定前端和后端程序接口標準;
3、不斷優(yōu)化前端體驗和頁面響應(yīng)速度,優(yōu)化代碼,保持良好的兼容性,提高web界面易用性;
4、完成產(chǎn)品設(shè)計、開發(fā)、測試、修改等工作。
5、解決項目開發(fā)過程中遇到的技術(shù)和業(yè)務(wù)問題。
總結(jié):
1、負責網(wǎng)站的前端開發(fā),實現(xiàn)產(chǎn)品頁面交互和功能實現(xiàn);
2、與程序開發(fā)人員密切合作,制定前端和后端程序接口標準;
3、不斷優(yōu)化前端體驗和頁面響應(yīng)速度,優(yōu)化代碼,保持良好的兼容性,提高web界面易用性;
4、完成產(chǎn)品設(shè)計、開發(fā)、測試、修改等工作。
5、解決項目開發(fā)過程中遇到的技術(shù)和業(yè)務(wù)問題。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:0731-84117792E-MAIL:11247931@qq.com
二、HTML是什么?
HTML的全稱是超文本標記語言,是一種標記語言。 它包括一系列標簽。通過這些標簽,可以統(tǒng)一網(wǎng)絡(luò)上的文檔格式,將分散的互聯(lián)網(wǎng)資源連接成一個邏輯整體。HTML文本是由HTML命令組成的描述性文本,可以解釋文字、圖形、動畫、聲音、表格、鏈接等。超文本是一種組織信息的方式,它通過超鏈接的方法將文本中的字符和圖表與其他信息媒體聯(lián)系起來。這些相互關(guān)聯(lián)的信息媒體可能在相同的文本中,或者在其他文件中,或者在地理上相距很遠的計算機上的文件中。這種組織信息的方式將分布在不同地點的信息資源以隨機的方式連接起來,為人們查找和檢索信息提供了方便。
三、2022前端開發(fā)面試記錄(深圳篇)
2022年來到深圳,感覺到了與之前所在城市的差異,心里多少有點落差。雖然時機不太對吧,但是相信一切都會好起來的,給自己加油呀!
整理了一些面試被問到的問題,雖然很多是無效面試,但是我也強行問了面試官,從他們的回答中猜測了一下他們關(guān)注的面試點,所以也算是有點收獲吧,只是浪費了很多簡歷和路費,哭唧唧。
——1、區(qū)塊鏈——
1-1、vue生命周期;
1-2、vuex屬性;
1-3、用戶開始登錄到登錄成功都發(fā)生了什么;
1-4、git常用的命令;
——2、金融:vue——
筆試:
2-1、深淺拷貝的區(qū)別,為什么會出現(xiàn)深淺拷貝,淺拷貝的優(yōu)勢;
2-2、強制中斷 foreach 遍歷;
2-3、多處組件復用;
2-4、你對前端是什么概念,前端在整個軟件生態(tài)內(nèi)是什么角色;
2-5、Vue2 中數(shù)據(jù)變化但視圖沒有發(fā)生同步更新,描述一下出現(xiàn)的場景,解決方式,以及該問題發(fā)生的可能原因;
2-6、nextTick 是如何確保開發(fā)者能夠獲取到最新的 DOM 狀態(tài)的;
2-7、如何使用 mixins,有何利弊;
2-8、使用 Hooks 模式開發(fā)時,useMemo,useCallback 常用來作為優(yōu)化的手段。描述一下它們各自的適用場景,以及背后的原理實現(xiàn)?;
2-9、前端從 Jquery 時代演變至如今的三大框架,這種演變的根源是什么,jquery 解決了什么問題,如今的三大框架又是為了解決什么問題出現(xiàn)的?
視頻面試:
2-10、js遍歷樹形結(jié)構(gòu),每個節(jié)點都有一個唯一ID,只能遍歷一次;
2-11、組件封裝的意義;
——3、知識產(chǎn)權(quán):vue2、vue3、ts、react——
3-1、說一說面向?qū)ο蟮睦斫?,包括繼承、封裝、多態(tài)等;
3-2、說一說promise;
3-3、webpack優(yōu)化;
3-4、vuex使用場景;
3-5、描述一下對vue響應(yīng)式原理的理解;
3-6、vue生命周期;
3-7、父子組件鉤子函數(shù)執(zhí)行順序;
3-8、v-if和v-show;
3-9、js數(shù)據(jù)類型;
3-10、實現(xiàn)深拷貝;
——4、物流——
4-1、vue生命周期;
4-2、生命周期-修改元素樣式在生命周期的哪個階段;
4-3、生命周期-修改數(shù)據(jù)在哪個階段;
4-4、生命周期-destroy里面會做哪些操作;
4-5、怎么修改title的內(nèi)容;
4-6、父子組件傳參的具體寫法;
4-7、v-model的多種寫法;
4-8、js數(shù)據(jù)類型;
4-9、判斷數(shù)組的方法;
4-10、實現(xiàn)左邊固定右邊自適應(yīng)的布局;
4-11、實現(xiàn)div垂直水平居中;
4-12、flex:1;
4-13、flex詳解;
4-14、call,apply,bind是干什么的;
——5、新興產(chǎn)業(yè)——
5-1、封裝路由,怎么攔截路由;
5-2、瀏覽器緩存有哪些,又問localStorage和sessionStrorage的區(qū)別和應(yīng)用場景;
5-3、瀏覽器強緩存和協(xié)商緩存;
5-4、webpack打包機制,構(gòu)建過程和配置;
5-5、性能優(yōu)化方法;
5-6、前端的業(yè)務(wù)和后端的API是怎么做到數(shù)據(jù)實時請求的(問的其實是前端對后端API接口的封裝和管理);
5-7、computed和watch;
5-8、說了幾個關(guān)于大屏的應(yīng)用場景,有沒有做過,怎么做的;
——6、某水果:vue2、vue3、ts、各種前沿技術(shù)都用——
6-1、怎么封裝一個組件庫/工具類庫,比如vue封裝過什么復雜組件,jquery封裝過什么類庫;
6-2、get和post的區(qū)別,傳參格式等;
6-3、promise怎么用的;
6-4、原型鏈,test()的原型鏈;
6-5、websocket;
6-6、es6中的generator;
6-7、es6中的set和map有啥區(qū)別,set為什么能去重;
6-8、項目難點;
——7、醫(yī)療健康:vue——
7-1、vue自定義指令配置;
7-2、webpack的理解;
7-3、對node的了解,用過express嗎;
7-4、項目中的拖拽是怎么做的;
7-5、websocket和socket的區(qū)別;
7-6、聽過mqtt嗎,因為沒聽過所以解釋了一下activemq的用法;
7-7、二維地圖的聚合,如果有十萬個點,會做什么優(yōu)化;
7-8、地圖實現(xiàn)多個點連成一條線會怎么做;
7-9、地圖實現(xiàn)一條曲線;
7-10、內(nèi)網(wǎng)下git怎么用的;
7-11、openlayers渲染機制;
7-12、父子組件通信方法;
7-13、router中實現(xiàn)攔截;
7-14、對象合并的方法;
7-15、父子組件的生命周期執(zhí)行順序,渲染階段為什么會先執(zhí)行父組件再執(zhí)行子組件;
7-16、vue生命周期;
7-17、npm run dev, run build可以在項目中的什么位置找到;
7-18、vue中跳轉(zhuǎn)頁面的方法;
7-19、mixins用過嗎;
7-20、判斷引用類型的方法;
7-21、js數(shù)據(jù)類型;
7-22、判斷基本數(shù)據(jù)類型的方法;
7-23、for in和for of的用法和區(qū)別,兩者遍歷的是索引還是屬性值,兩者都可以遍歷對象嗎;
7-24、foreach和map的區(qū)別,兩者會不會改變原數(shù)組;
7-25、主要用什么技術(shù)棧;
7-26、行內(nèi)元素和塊級元素的區(qū)別,分別都有哪些,行塊級元素有哪些;
7-27、div垂直水平居中,grid知不知道怎么用;
7-28、splice和slice;
——8、智慧園區(qū):vue2、vue3、ts、uniapp——
8-1、flex了解嗎,flex布局方向,flex:1 0的頁面效果是怎樣的;
8-2、做過移動端嗎,了解uniapp嗎;
8-3、keep-alive;問了一個沒聽明白的,可能和keep-alive有關(guān)系;
8-4、vuex中的action;不用vuex,怎么代替vuex;
8-5、promise.all和promise.on;
8-6、防止表單重復提交;
8-7、async,await的使用;
8-8、vue3和ts的了解;
8-9、防抖怎么控制時間;
8-10、vue中的data為什么要設(shè)計成一個函數(shù);
——9、智慧工地:vue、uniapp、小程序——
9-1、Vuex是干什么的;
9-2、openlayers怎么用的;
9-3、性能優(yōu)化;
9-4、spa首屏加載優(yōu)化;
9-5、bundler.js太大,打包怎么優(yōu)化;
9-6、加密方式了解多少,比如md5,base64等,一大堆沒聽過的;
9-7、冒泡排序的實現(xiàn)原理;
9-8、js設(shè)計模式;
——10、某快遞公司外包——
10-1、一棵樹的數(shù)據(jù),給的是列表格式,轉(zhuǎn)換成樹形結(jié)構(gòu);
10-2、項目相關(guān)的,聊天怎么做的,拖拽怎么做的,拖拽的數(shù)據(jù)怎么渲染的,拖拽重疊怎么處理的;
10-3、js設(shè)計模式;
——11、三維:vue、cesium——
11-1、一棵樹的數(shù)據(jù),給的是列表格式,轉(zhuǎn)換成樹形結(jié)構(gòu);
11-2、openlayers怎么用的,發(fā)布過wms嗎,發(fā)布流程是怎樣的;
11-3、openlayers轉(zhuǎn)換經(jīng)緯度的方法名是什么;
11-4、cesium常用的函數(shù);
11-5、vue數(shù)據(jù)雙向綁定原理;
11-6、Vue中data屬性如果改變一個數(shù)組的下標,會不會馬上發(fā)生變化,不變化可以怎么解決
11-7、數(shù)組常用方法有哪些;
11-8、 map和filter的區(qū)別;
11-9、es6常用的方法;
11-10、父子組件通信,兄弟組件通信;
11-11、new具體進行了什么操作;
——12、醫(yī)療:vue、angular——
12-1、js渲染機制和運行機制;
12-2、vue數(shù)據(jù)綁定原理;
——13、建設(shè)行業(yè):vue、uniapp——
筆試:
13-1、||與&運算符;
13-2、垂直居中方案;
13-3、let a=arr, b=a, c=arr.concat(), a[0]=3,打印b和c,應(yīng)該是深淺拷貝;
13-4、實現(xiàn)font-size:12;
13-5、接口路徑,給一個地址 http://localhost/projectname/resource/index(http://localhost/projectname/resource/index).html ,根據(jù)url請求接口路徑寫出完整路徑,’/ geturl.do ’,’ geturl.do ’,’../ geturl.do ’;
13-6、微信小程序流程和主要文件;
13-7、獲取url參數(shù)及內(nèi)容;
13-8、$(function(){}) / (function(){}) / (function(){})()的區(qū)別;
13-9、前端優(yōu)化方案;
面試:
13-10、項目難點;
13-11、git工作流;
13-12、jquery項目會不會用webpack打包;
13-13、webpack優(yōu)化;
13-14、web優(yōu)化;
——14、文化:uniapp——
14-1、ssr渲染;
14-2、ajax和axios的區(qū)別;
14-3、cookie和session的區(qū)別;
14-4、vue生命周期;
14-5、數(shù)據(jù)請求寫在哪個生命周期中;
14-6、router的history模式和hash模式;
14-7、工作中的開發(fā)流程;
14-8、uniapp的開發(fā)流程和坑;
14-9、uniapp滑動問題,下滑切換視頻不生效,一般是什么原因;
14-10、uniapp加載速度慢,點擊加載圖片速度太慢,一般是什么原因;
——15、企業(yè)平臺某外包:vue,node,性能優(yōu)化——
15-1、說一說websocket;
15-2、vue數(shù)據(jù)雙向綁定原理;
15-3、項目難點;
15-4、對mvvm、mvc、mvp等的理解;
15-5、vue的常見指令;
15-6、computed和watch;
15-7、class和style怎么綁定;
15-8、ajax和axios的區(qū)別;
15-9、axios攔截器,axios的post請求;
15-10、對前端渲染,服務(wù)端渲染的理解;
——16、智慧城市:vue,node,three.js——
16-1、vue生命周期;
16-2、vue組件通信方法;
16-3、js的繼承;
16-4、oracle、mysql、sqllite的區(qū)別;
16-5、oracle連表查詢;
16-6、openlayers項目場景;
16-7、cesium項目場景;
——17、租房:jquery+layui,vue2——
17-1、筆試:
17-2、foo打印題;
17-3、this打印題;
17-4、變量提升打印題;
17-5、let arr=[1,2,[5,8,[9,[3,5,]7,]20,37]] 把數(shù)組扁平化成一個數(shù)組,并進行去重升序;
17-6、let a=[1,2,3,4,5,6,7]; let b=[4,5,6]; 求b在a中第一次出現(xiàn)的位置;
17-7、面試:主要問項目
——18、跑腿:vue2,vue3+ts——
18-1、對html5語義化的理解;
18-2、css實現(xiàn)一個三角形;
18-3、css怎么實現(xiàn)0.5px的線,為什么有這種需求,涉及到兼容性問題;
18-4、怎么解決變量提升的問題;
18-5、es6新增了哪些定義變量的方式;
18-6、const定義的變量可以被修改嗎;
18-7、map和filter的區(qū)別,會改變原數(shù)組嗎;
18-8、es6去重的方法;
18-9、談一談對promise的理解;
18-10、除了鏈式調(diào)用,promise還可以怎么處理同步請求(async/await);
18-11、對vue響應(yīng)式原理的理解,核心是什么;
18-12、對vue生命周期每個階段的理解;
18-13、為什么要用key,key有什么作用;
18-14、v-if和v-show;
18-15、Vue中data為什么是一個函數(shù);
18-16、vue各場景下的傳值方式有哪些,比如父子組件,兄弟組件,祖孫組件;
18-17、對vuex的理解和使用場景;
18-18、vue常見修飾符;
18-19、Vue3用過嗎(因為沒用過,所以就只針對響應(yīng)式原理說了一下vue3和vue2的區(qū)別);
——19、實業(yè):jquery,vue2,vue3——
筆試:需要解釋
19-1、html5新標簽,css3新特性;
19-2、js+css3實現(xiàn)某元素以50px每秒的速度左移100px;
19-3、css實現(xiàn)左中右布局,不改變文檔流;
19-4、js兼容性有哪些,以及常見的解決方案;
19-5、描述一下事件循環(huán)機制eventloop,eventloop解決了什么問題;
19-6、給了一個題,大概是后端返回的接口數(shù)據(jù),data的格式有很多,比如null,對象,數(shù)組,字符串等,怎么處理這種問題;
19-7、前端性能優(yōu)化方法,首屏頁面怎么優(yōu)化;
19-8、用js寫一個方法實現(xiàn)數(shù)據(jù)去重并排序(用es5和es6+實現(xiàn));
19-9、給定一個數(shù)組,把數(shù)組中為0的往后排,其他值按順序排序; (示例:[1,0,4,0,5,3]轉(zhuǎn)換結(jié)果為[1,3,4,5,0,0])
19-10、用0,1,2代表紅黃藍三種顏色,實現(xiàn)以下排序,不能用array.sort實現(xiàn);(示例:[0,1,0,2,0,1,2]轉(zhuǎn)換結(jié)果為[0,0,0,1,1,2,2])
面試:
19-11、flex布局;flex:1對應(yīng)的屬性;
19-12、講一下原型鏈; proto 和prototype有什么區(qū)別;字符串有沒有原型;給定一個str,str.test()調(diào)用的誰的test方法;
19-13、講一下閉包;什么情況下才能算是閉包;形成閉包的條件;列了三個題讓你判斷是不是閉包;
19-14、v-if和v-show是干什么的;應(yīng)用場景有哪些;給定一對父子組件,默認值是false,另外有一個ajax請求,值發(fā)生了以下變化(false true false true true),在v-show和v-if中,父子組件的哪個階段里會請求ajax;
19-15、computed的實現(xiàn)原理,怎么實現(xiàn)一個computed;
19-16、css中,transform,margin,position的都是怎么渲染的,渲染機制是什么;amd,cmd,commonjs了解嗎;
四、前端學習跟不上怎么辦
給你一下學習前端的建議
前端最基礎(chǔ)的就是HTML+CSS+Javascript。掌握了這三門技術(shù)就算入門前端了,但這僅僅是入門,簡單的來說就是你可以切圖了,也就是所謂的靜態(tài)網(wǎng)頁?,F(xiàn)在前端開發(fā)的定義已經(jīng)遠遠超過切圖了。你還需要更加深入的學習其他的前端技術(shù)。
撇開具體細節(jié)來講,前端相對于后端來說,前端就是直接擺在了用戶面前,如果說后端面向的主要是業(yè)務(wù)邏輯,數(shù)據(jù)庫,操作系統(tǒng),那么前端面對的是用戶交互和體驗。不妨這么理解,為了提高用戶的體驗,我們需要使用CSS去做樣式美化,需要使用JavaScript去做一些交互,同樣為了提高用戶的體驗,我們還需要去做SEO優(yōu)化,需要去考慮性能優(yōu)化,去做腳本壓縮,去做緩存控制,同時也為了我們自己開發(fā)方便,我們需要去學習使用一些自動化工具來解放我們的雙手……
學習前端給你幾個步驟
第一步:制定合理的學習計劃
都說萬事開頭難,尤其對于零基礎(chǔ)小白來講,一開始入門學習前端,很容易就迷失在前端零散的知識點中。因此在一開始學習的時候,我們就需要制定一個合理的學習計劃,把所有前端的核心必學知識點做一個匯總。比如HTML、CSS和JavaScript三大網(wǎng)頁制作要素,還有Node.js 與 AJAX前端框架等等,都是需要一一掌握的內(nèi)容。然后再把內(nèi)容進行分塊來學,每天的內(nèi)容都是固定的。
學習前端內(nèi)容應(yīng)該循序漸進,不能急也不能拖。每天學習的量要差不多,然后完成每天的知識,并且把它掌握,每天做多少練習,完成什么作業(yè),都要明確??傊褪歉鶕?jù)學習內(nèi)容和個人學習能力,以及每天可以抽出的學習時間,來合理規(guī)劃學習過程。
第二步:選擇適合的學習方式
眾所周知,人是惰性的生物。在學習中,堅持是學習成敗的關(guān)鍵。而很多選擇自學的小白學習前端的過程都是從入門到放棄的過程。造成學習失敗的原因有很多,不外乎就是學習缺乏良好的學習氛圍,沒有其他人的督促,學習自驅(qū)力弱,再或者是在學習上遇到太多的疑問,沒有人可以詢問和討論等等。因此,大家一定要清楚的找準自己的定位,對自己的學習能力有一個清醒的認識,然后再選擇一個適合自己的學習方式。
目前可以學習前端的方式有很多,比如自學、還有培訓等等。如果你有時間有錢,可以選擇線下的面授課;又或者你天賦異稟,自律能力超強,也可以完全自學。
第三步:學習基礎(chǔ)理論
在完成了學習計劃的制定后,我們要做的就是開始正式進入前端的學習。對于前端零基礎(chǔ)小白來說,打好前端的基礎(chǔ)是至關(guān)重要的第一步。
首先學習HTML+CSS相關(guān)內(nèi)容,在掌握了HTML和CSS語法及使用技巧之后,還要學習PC端靜態(tài)網(wǎng)頁的開發(fā)技巧。然后再開始移動 Web 網(wǎng)頁開發(fā)的內(nèi)容學習,基礎(chǔ)內(nèi)容包括HTML5 標簽 、CSS3 動畫、移動端適配、真機調(diào)試、rem、flex 布局、媒體查詢、Bootstrap、Viewport 、移動端調(diào)試等等,學完可以具備移動端網(wǎng)頁布局分析和網(wǎng)頁開發(fā)能力。最后是JavaScript 網(wǎng)頁編程的學習,完成這一部分的基礎(chǔ)知識,大家就能才能從零基礎(chǔ)小白進階為具備前端領(lǐng)域基礎(chǔ)編程思維和能力學習者。
第四步:實戰(zhàn)開發(fā)操練
在大家學完了前端的基礎(chǔ)理論之后,就要開始把理論與實踐結(jié)合起來,真正的去完成一些前端項目的開發(fā)練習。
以上就是關(guān)于前端項目優(yōu)化相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
前端管理系統(tǒng)項目描述(前端管理系統(tǒng)項目描述怎么寫)
可以從哪些方面進行前端優(yōu)化(可以從哪些方面進行前端優(yōu)化工作)