I want to know where the main application of algorithms in web Front-end development is. Is there a combination of points? I want to know where the main application of algorithms in web Front-end development is. Is there a combination of points? Reply: # optimize the native JavaScript method (not necessarily all methods will improve the speed) and expand.
* Famous jQuery
And Zepto. js: the aerogel-weight jQuery-compatible JavaScript library
* Underscore. js
# Mathematical computing
* JStat: a JavaScript statistical library
Statistical Algorithm Library
# Graphic computing
* KineticJS HTML5 Canvas Framework
More is encapsulation of the Canvas interface, but a large number of algorithms are used in animation.
The new version is taken from gsap js-Professional-Grade JavaScript Animation «GreenSock
* Three. js-JavaScript 3D library
You don't need to talk about this. Various demos have already explained everything. These are the application of algorithms.
...... There are many more.
The Web Front-end can also process a large amount of data.
However, because the language itself is not efficient, there are performance differences on different platforms (especially on mobile platforms ),
Algorithms are needed to optimize these data processing processes.
In addition, it cannot be said to be an algorithm. It is an engineering mode that limits the excessive flexibility of JavaScript.
Use AMD, CommonJS, and ES Harmony to write modular JavaScript
In short, the front-end has a tendency to "cannot do anything, only unexpected ......
Finally, let's look at what we want to make. I want the subject to look forward to the example of front-end algorithm application, rather than the implementation of specific algorithms, or even a mathematical library.
The front-end is designed for interface and interactive implementation, so algorithm research and application are indeed relatively small. Known fields that require certain algorithm applications include games, editors and collaborative office, GIS (MAP), and reader layout.
In addition to these complex front-end applications, the front-end does have fewer algorithm requirements.
However, I think the front-end has few technical problems, but there are many engineering problems. It is another area worthy of research and exploration.
Reference facebook static resource management system @ velocity2010 http://v.youku.com/v_show/id_XMjI5OTUxMjE2.html
The dependency algorithm in the module loader. Line or area.
How to optimize the node relationship algorithm in the editor?
The process of selector optimization, regular expression or loop.
Animation implementation principle. Geometric concepts.
Stack application. Queue Management. How to Design the json structure and frontend sorting.
Date and map.
Too many. You only developed too few things. Data Visualization http://d3js.org/
Game Engine https://html5gameengine.com/
There are many algorithm applications, such as common interface animation, 3D animation, canvas-based verification code recognition, and image processing. They are not a very general library, but I like them very much. Very delicate. I used Canvas for page effects in the past:
Gorhill/Javascript-KNN-GitHub
Oldj's article: How to draw robot cats on webpages without HTML5/CSS3
After discussing the optimization of DOM plotting, it is a unique problem of the web Front-end:
Although computer graphics is very mature, p is used to draw images on webpages (called DOM graphics), which is different from traditional computer graphics, the smallest unit that can be used in traditional computer graphics is a 1px point, but the smallest unit that can be used in DOM drawing is a p or a rectangle, for DOM painting technology, the cost of drawing a small point is almost the same as that of drawing a large rectangle (horizontal or vertical lines can also be seen as rectangles ). This puts forward an optimization requirement for DOM plotting: how to use as few rectangles as possible to construct the desired image? As shown in.
Shows the three optimizations of an arc in a DOM drawing. The leftmost p is used, and there is no conciseness in the conciseness. The specific manifestation is that the image seems to have sertices or muddy water. The conciseness in the middle solves the conciseness problem, however, there are still too many p used, and the merge is not merged; the p on the right is merged based on the previous two, and the p on the same row and column is adjacent, the minimum p is used to draw the image. We believe that this scheme on the right is the best for DOM painting. Shows the three optimizations of an arc in a DOM drawing. The leftmost p is used, and there is no conciseness in the conciseness. The specific manifestation is that the image seems to have sertices or muddy water. The conciseness in the middle solves the conciseness problem, however, there are still too many p used, and the merge is not merged; the p on the right is merged based on the previous two, and the p on the same row and column is adjacent, the minimum p is used to draw the image. We believe that this scheme on the right is the best for DOM painting.
I understand that some algorithms are used for advertising. I think the algorithms are of little use at most. Of course, let's take a look at the typical algorithms. We can use the algorithms to implement incremental updates to the js version, so that users can only download the updated code and achieve the accuracy at the character level: mtjs/mt · GitHub
To put it this way, he prefers the Function Method in JavaScript. If you use JS as C, you can only get rid of it. If you use it as a function, you will feel that it is not bad.
The author of jQuery just looked at this point and borrowed a bit from the functional method. Now there are a lot of front-end crying and shouting that jQuery is indispensable.