This time we bring you the latest front-end interview questions in 2018. We know that interviews are an essential part of front-end work. This time, the common front-end interview questions are sorted and summarized to help you get through the front-end interview. Big trouble. Let’s take a look.
[Related recommendations: Front-end interview questions (2020)]
1. How do you optimize the files and resources of the website?
1. Reduce the number of http requests as much as possible, merge css, js, and pictures
2. Use CDN to reduce communication distance
3. Add Expire/Cache-Control header
4 .Enable Gzip compressed files
5.Put css at the top of the page
6.Put script at the bottom of the page
7.Avoid using expressions in css
8.Place css, js are placed in external files
9. Reduce DNS queries
10. Minimize css, js, reduce file size
11. Avoid redirection
12. Remove duplicate scripts
13. Configure entity tag ETag
14. Use AJAX cache to load website content in batches and update locally
2. Why is it more effective to use multiple domain names to provide website resources? How many resources can a browser download from one domain name at the same time?
1. Static content and dynamic content are stored on separate servers, and different servers are used to process requests. Processing of dynamic content only processes dynamic content and does not process anything else to improve efficiency, which makes CDN (content distribution network) caching more convenient
2. Break through the browser concurrency limit (you can just pick a G URL: https://lh4.googleusercontent.com/- si4dh2myPWk/T81YkSiAI/AAAAAAAAQ5o/LlwbBRpp58Q/w497-h373/IMG_20120603_163233.jpg, replace the lh4 in front with lh3, lh6 and so on, and you can still access it, like a map This is very important for sites like this that require a large number of concurrent downloads of images. )
3. Cookies will not be transferred across domains, saving bandwidth
3. Please write a simple slideshow effect page
<!DOCTYPE html> <html> <head> <title>幻灯片</title> <style type="text/css"> .myDiv{ width:600px; height:400px; margin:20px auto; background-size:over; background-postion:center; -webkit-animation-name: "loop"; -webkit-animation-duration:20s; -webkit-animation-iteration-count:infinite; } @-webkit-keyframes "loop"{ 0%{background:url(http://img5.duitang.com/uploads/blog/201408/12/20140812150016_8NMUU.jpeg) no-repeat;} 25%{background:url(http://pic29.nipic.com/20130518/9908282_142904524164_2.jpg) no-repeat;} 50%{background:url(http://uploadfile.huiyi8.com/2014/0605/20140605114503719.jpg) no-repeat;} 75%{background:url(http://img3.redocn.com/20100322/Redocn_2010032112222793.jpg) no-repeat;} 100%{background:url(http://uploadfile.huiyi8.com/2014/0605/20140605114447934.jpg)no-repeat;} } </style> </head>
4. Please talk about your understanding of the importance of web standards and standard-setting organizations.
Web standards and standard-setting organizations are all intended to make the development of the web more "healthy". First, they constrain browser developers to follow unified standards, and secondly, they constrain website developers, thus reducing development difficulty and cost. SEO will also be better, and there will be no bugs or security issues caused by misuse of code, ultimately improving the usability of the website.
5. Please explain the advantages and disadvantages of CSS animation and JavaScript animation.
JS Animation
Disadvantages: (1) JavaScript runs in the main thread of the browser, and there are other JavaScript scripts, style calculations, layouts, drawing tasks, etc. that need to be run in the main thread, which interfere with the thread and cause Blocking may occur, resulting in frame loss.
(2) The complexity of the code is higher than that of CSS animation
Advantages: (1) JavaScript animation control capability is very strong, and the animation can be controlled during the animation playback process: start, pause, playback, terminate, and cancel. It can be done.
(2) Animation effects are richer than css3 animations. Some animation effects, such as curve movement, impact flicker, and parallax scrolling effects, can only be completed by JavaScript animation.
(3) CSS3 has compatibility issues , and JS most of the time does not have compatibility issues
CSS animation
Disadvantages: (1) The running process control is weak and event bindingcallback functions cannot be attached. CSS animations can only be paused, cannot find a specific time point in the animation, cannot reverse the animation halfway, cannot change the time scale, cannot add callback functions at specific positions or bind playback events, and there is no progress report
(2) The code is lengthy. If you want to use CSS to implement slightly more complex animations, the CSS code will become very cumbersome in the end.
Advantages: (1) The browser can optimize animations.
Browsers use a similar mechanism to requestAnimationFrame. Compared with setTimeout and setInterval, the main advantages of requestAnimationFrame in setting animations are: 1) requestAnimationFrame will concentrate all DOM operations in each frame and complete them in one redraw or reflow. , and the redraw or reflow time interval closely follows the browser's refresh frequency. Generally speaking, this frequency is 60 frames per second. 2) requestAnimationFrame will not redraw or reflow in hidden or invisible elements, which of course means less cpu, gpu and memory usage. Force the use of hardware acceleration (improve animation performance through GPU)
I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the PHP Chinese website!
Related reading:
2018 latest front-end interview questions two
2018 latest front-end interview questions three
2018 latest front-end interview questions four
2018 latest front-end interview questions five
The above is the detailed content of 2018 latest front-end interview questions six. For more information, please follow other related articles on the PHP Chinese website!

JavaScript runs in browsers and Node.js environments and relies on the JavaScript engine to parse and execute code. 1) Generate abstract syntax tree (AST) in the parsing stage; 2) convert AST into bytecode or machine code in the compilation stage; 3) execute the compiled code in the execution stage.

The future trends of Python and JavaScript include: 1. Python will consolidate its position in the fields of scientific computing and AI, 2. JavaScript will promote the development of web technology, 3. Cross-platform development will become a hot topic, and 4. Performance optimization will be the focus. Both will continue to expand application scenarios in their respective fields and make more breakthroughs in performance.

Both Python and JavaScript's choices in development environments are important. 1) Python's development environment includes PyCharm, JupyterNotebook and Anaconda, which are suitable for data science and rapid prototyping. 2) The development environment of JavaScript includes Node.js, VSCode and Webpack, which are suitable for front-end and back-end development. Choosing the right tools according to project needs can improve development efficiency and project success rate.

Yes, the engine core of JavaScript is written in C. 1) The C language provides efficient performance and underlying control, which is suitable for the development of JavaScript engine. 2) Taking the V8 engine as an example, its core is written in C, combining the efficiency and object-oriented characteristics of C. 3) The working principle of the JavaScript engine includes parsing, compiling and execution, and the C language plays a key role in these processes.

JavaScript is at the heart of modern websites because it enhances the interactivity and dynamicity of web pages. 1) It allows to change content without refreshing the page, 2) manipulate web pages through DOMAPI, 3) support complex interactive effects such as animation and drag-and-drop, 4) optimize performance and best practices to improve user experience.

C and JavaScript achieve interoperability through WebAssembly. 1) C code is compiled into WebAssembly module and introduced into JavaScript environment to enhance computing power. 2) In game development, C handles physics engines and graphics rendering, and JavaScript is responsible for game logic and user interface.

JavaScript is widely used in websites, mobile applications, desktop applications and server-side programming. 1) In website development, JavaScript operates DOM together with HTML and CSS to achieve dynamic effects and supports frameworks such as jQuery and React. 2) Through ReactNative and Ionic, JavaScript is used to develop cross-platform mobile applications. 3) The Electron framework enables JavaScript to build desktop applications. 4) Node.js allows JavaScript to run on the server side and supports high concurrent requests.

Python is more suitable for data science and automation, while JavaScript is more suitable for front-end and full-stack development. 1. Python performs well in data science and machine learning, using libraries such as NumPy and Pandas for data processing and modeling. 2. Python is concise and efficient in automation and scripting. 3. JavaScript is indispensable in front-end development and is used to build dynamic web pages and single-page applications. 4. JavaScript plays a role in back-end development through Node.js and supports full-stack development.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

SublimeText3 Chinese version
Chinese version, very easy to use

SublimeText3 Mac version
God-level code editing software (SublimeText3)

SublimeText3 Linux new version
SublimeText3 Linux latest version
