34. JQuery中的设计模式(下)
链式风格
//index.html <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>手写jQuery</title> </head> <body> <div class="test">Hello</div> <script src="jquery.js"></script> <script src="main.js"></script> </body> </html>//main.js const api = jQuery(".test"); // 不返回元素,返回 api 对象 api.addClass("red").addClass("blue"); // 链式操作 //jQuery(".test").addClass("red").addClass("blue"); // 链式操作//jQuery.js window.jQuery = function (selector) { const elements = document.querySelectorAll(selector); // api 可以操作 elements return { addClass(className) { //闭包:函数访问外部的变量 for (let i = 0; i < elements.length; i++) { elements[i].classList.add(className); } return this; //函数如果用对象来调用,那么函数里的 this 就指向这个对象 }, }; };
jQuery 是构造函数吗?
术语
链式风格
命名风格
链式风格
链式风格
设计模式
我应该学习设计模式吗?
有人说不用学 jQuery
最后更新于