Articles published by Feng Xiaoxian

Today, just an old friend chatted up the jQuery source code. He didn't understand the source code. I had a learning and communication attitude and explained the core realization to him. (as if he had been pigeon for a long time).

By the way, which CDN service provider is looking for a jQuery file to open? The 1.2.3 version I use here is for example. The latest version is almost the same, with only two or three changes. Https://cdnjs.cloudflare.com/ajax/libs/jquery/1.2.3/jquery.js

Source code analysis

17-20 elements Pass the selector and return the init method of your own new. It is estimated that you haven't used it either. $() The second parameter is omitted here.

 Var jQuery = window.jQuery = function (selector) {
return new jQuery.prototype.init (selector);}

26-27 elements This is why it is always a global variable to mount to a window object because of the beginning of $.

 / / Map the jQuery namespace to the '$' one
window.$= jQuery;

36-547 elements Eliminate the core of retention that we do not need. Init Method, the jQuery instance and the selector are judged internally. Here we ignore and simplify.

 JQuery.fn = jQuery.prototype = {
init: function (selector) {
var nodes = document.querySelectorAll (selector); 
for (VaR, 
for) = =; one hundred thousand;

549 elements In the last paragraph, the jQuery prototype chain is passed to the prototype of the init method under the jQuery prototype. Looking back at the new code, it is clear and clear.

 JQuery.prototype.init.prototype = jQuery.prototype;

Complete implementation

Adding functionality to the jQuery prototype is very close to the first version of jQuery. Here I am a simple implementation. Text () Method

 Var jQuery= function (selector) {
return new jQuery.fn.init (selector); 
}

jQuery.fn = jQuery.prototype = {
init:; (
}

jQuery.fn) = = (()); (0); (},}; (},}, "}", "}," "(") ";"

End

Actually, the core is not complicated. I like it very much. I think most of my functions are implemented by plug-ins. The ingenious design and convenience of the tools themselves.

On the traditional page production, jQuery used a very comfortable shuttle, but the appearance of MVVM changed the way of thinking. We only need to pay attention to business logic, do not need to manually operate DOM, do not need to pay attention to the synchronization of data status, and ease the project management.

If there are simple needs on a single page, jQuery is still useful, MVVM can only be added trouble.

I feel so good lately.

TX Hongkong is like a bomb? Since the record is still considered to move into the domestic 8

The old version of the pagoda, which is used before the panel, is still in use. It plans to backup the site and reset the server. A few days ago, it used docker to configure instances in the house virtualization device. The php+nginx site can use the configuration of this instance uniformly. Alpine-nginx-php7

After reading the last article, two months ago, wow, I spent more than a month at home.

What do you want to do at home? Sleep, play games, watch movies, write code, read books, participate in activities, spell models, pick up trash, exercise properly, and organize your room.

The approximate time allocation is as follows
 QQ screenshot 20190603202936.png

Look at millet Bracelet every day almost 10 hours of sleep time, steam collectors game to buy and play? Of course, it's a game of hand travel. The simple and fast way to play in the wilderness is really good. There are four fixed map scenes and a map of activities. The fixed map play can be launched in the time frame. The new activities will fine tune the scene objects and add some specific playing methods. The reward mechanism of the team is also very clever. Unless you are the countdown of 123, there will be rewards. Each match is similar to the qualifying match. The victory will win the trophy (the personal individual cup and the total trophy), the total trophy will only accumulate all the time, failure will only reduce the personal trophy of the hero, and it will be poisonous when playing for a long time.


- reading the remainder part -