当前位置: 首页 > wzjs >正文

在线式crmwin11优化大师

在线式crm,win11优化大师,美食网站网站建设定位,做ppt封面的网站欢迎来到编程星辰海的博客讲解 看完可以给一个免费的三连吗,谢谢大佬! 目录 一、知识体系详解 1. 变量与作用域 2. 箭头函数特性 3. 数组高阶函数 4. DOM操作原理 5. 事件传播机制 6. 闭包核心原理 7. 原型继承体系 8. Promise工作流程 二、综…

=====欢迎来到编程星辰海的博客讲解======

看完可以给一个免费的三连吗,谢谢大佬!

目录

一、知识体系详解

1. 变量与作用域

2. 箭头函数特性

3. 数组高阶函数

4. DOM操作原理

5. 事件传播机制

6. 闭包核心原理

7. 原型继承体系

8. Promise工作流程

二、综合案例:用户管理系统

1. HTML结构

2. JavaScript代码(app.js)

三、实现效果

四、学习要点总结

五、扩展学习推荐

官方文档

优质文章


一、知识体系详解

1. 变量与作用域

JAVASCRIPT

// var 存在变量提升和函数作用域
console.log(a); // undefined
var a = 10;// let/const 块级作用域
{let b = 20;const MAX = 100;
}
console.log(b); // ReferenceError
2. 箭头函数特性

JAVASCRIPT

const obj = {name: 'obj',regularFunc: function() {console.log(this.name); // obj},arrowFunc: () => {console.log(this.name); // undefined(继承外层this)}
}
3. 数组高阶函数

JAVASCRIPT

const numbers = [1,2,3,4];// map转换
const doubled = numbers.map(n => n * 2); // filter筛选
const evens = numbers.filter(n => n%2 === 0);// reduce聚合
const sum = numbers.reduce((acc, cur) => acc + cur, 0);
4. DOM操作原理

JAVASCRIPT

// 创建元素
const div = document.createElement('div');
div.classList.add('box');// 批量插入
const fragment = document.createDocumentFragment();
items.forEach(item => {const li = document.createElement('li');fragment.appendChild(li);
});
ul.appendChild(fragment);
5. 事件传播机制

6. 闭包核心原理

JAVASCRIPT

function createCounter() {let count = 0; // 闭包保护的变量return {increment: () => ++count,getCount: () => count}
}
7. 原型继承体系

JAVASCRIPT

class Animal {constructor(name) {this.name = name;}speak() {console.log(`${this.name} makes a noise`);}
}class Dog extends Animal {constructor(name) {super(name);}speak() {super.speak();console.log(`${this.name} barks`);}
}
8. Promise工作流程


二、综合案例:用户管理系统(这是完整且可运行代码,有详细注释)

1. HTML结构

HTML

<!DOCTYPE html>
<html>
<head><title>用户管理系统</title><style>/* CSS样式 */.container { max-width: 800px; margin: 20px auto; }.search-box { margin-bottom: 20px; }table { width: 100%; border-collapse: collapse; }th, td { padding: 12px; border: 1px solid #ddd; text-align: left; }th { background-color: #f5f5f5; cursor: pointer; }.pagination { margin-top: 20px; }</style>
</head>
<body><div class="container"><div class="search-box"><input type="text" id="searchInput" placeholder="输入姓名或邮箱搜索..."></div><div id="userTable"></div><div class="pagination" id="pagination"></div></div><script src="app.js"></script>
</body>
</html>
2. JavaScript代码(app.js)

JAVASCRIPT

class UserManager {constructor() {this.users = [];       // 原始数据this.filteredUsers = []; // 过滤后数据this.currentPage = 1; // 当前页码this.pageSize = 5;    // 每页条数this.init();}/** 初始化方法(使用异步立即执行函数) */async init() {await this.fetchUsers();this.renderTable();this.setupEventListeners();}/** 使用fetch获取数据(Promise应用) */async fetchUsers() {try {const response = await fetch('https://dummyjson.com/users?limit=20');const data = await response.json();this.users = data.users.map(user => ({id: user.id,name: `${user.firstName} ${user.lastName}`,age: user.age,email: user.email,department: user.company.department}));this.filteredUsers = [...this.users];} catch (error) {console.error('数据加载失败:', error);}}/** 渲染表格(DOM操作) */renderTable() {const start = (this.currentPage - 1) * this.pageSize;const end = start + this.pageSize;const currentUsers = this.filteredUsers.slice(start, end);// 创建表格结构const table = document.createElement('table');table.innerHTML = `<thead><tr><th data-field="id">ID ▼</th><th data-field="name">姓名 ▼</th><th data-field="age">年龄 ▼</th><th data-field="email">邮箱 ▼</th><th data-field="department">部门 ▼</th></tr></thead><tbody>${currentUsers.map(user => `<tr><td>${user.id}</td><td>${user.name}</td><td>${user.age}</td><td>${user.email}</td><td>${user.department}</td></tr>`).join('')}</tbody>`;// 清空并更新表格const container = document.getElementById('userTable');container.innerHTML = '';container.appendChild(table);// 渲染分页this.renderPagination();}/** 分页组件 */renderPagination() {const totalPages = Math.ceil(this.filteredUsers.length / this.pageSize);const pagination = document.getElementById('pagination');// 生成页码按钮pagination.innerHTML = Array.from({length: totalPages}, (_, i) => `<button class="${i + 1 === this.currentPage ? 'active' : ''}" onclick="userManager.goToPage(${i + 1})">${i + 1}</button>`).join(' ');}/** 事件绑定(使用事件委托) */setupEventListeners() {// 搜索功能document.getElementById('searchInput').addEventListener('input', (e) => {const keyword = e.target.value.toLowerCase();this.filteredUsers = this.users.filter(user =>user.name.toLowerCase().includes(keyword) ||user.email.toLowerCase().includes(keyword));this.currentPage = 1;this.renderTable();});// 表头排序(闭包保存排序状态)document.querySelector('#userTable').addEventListener('click', (e) => {if (e.target.tagName === 'TH') {const field = e.target.dataset.field;this.sortUsers(field);}});}/** 排序逻辑 */sortUsers(field) {let isAsc = true; // 闭包保存排序方向return () => {this.filteredUsers.sort((a, b) => {if (typeof a[field] === 'string') {return isAsc ? a[field].localeCompare(b[field]): b[field].localeCompare(a[field]);}return isAsc ? a[field] - b[field] : b[field] - a[field];});isAsc = !isAsc;this.renderTable();}}/** 分页跳转 */goToPage(page) {this.currentPage = page;this.renderTable();}
}// 初始化系统
const userManager = new UserManager();


三、实现效果


四、学习要点总结

  1. 变量作用域控制

    • 使用const/let进行块级作用域管理
    • 使用IIFE管理私有变量
  2. 异步流程控制

    • async/await处理异步操作
    • Promise链式调用错误处理
  3. DOM操作优化

    • 使用文档片段批量插入
    • 事件委托减少监听器数量
  4. 函数式编程

    • map/filter/reduce组合使用
    • 纯函数避免副作用
  5. 模块化设计

    • 使用Class组织代码
    • 职责单一原则

五、扩展学习推荐

官方文档
  1. MDN JavaScript Guide
  2. ECMAScript 6 入门
  3. DOM Living Standard
优质文章
  1. JavaScript 闭包的终极指南
  2. Promise 使用模式最佳实践
  3. 现代 JavaScript 教程

建议通过Chrome开发者工具的Sources面板调试代码,观察闭包变量和事件传播过程,配合console.log验证程序执行流程。

http://www.dtcms.com/wzjs/121279.html

相关文章:

  • 深圳网站建设比较有名的企业个人网站怎么制作
  • 网站怎么做右上角消息提醒今日热点事件
  • 网站建设mobanwindows10优化工具
  • 制作b2c购物网站做推广哪个平台效果好
  • 天津滨海新区疫情最新通知东莞网站推广行者seo08
  • 南京哪些公司做网站wordpress免费网站
  • 做的网站被挂马营销型网站建设专家
  • 大流量网站解决访问量浏览器如何推广自己网站
  • 门户网站运营怎样推广app
  • 微信公众号做特效的网站网站维护一年一般多少钱?
  • 网站建设 回本游戏优化大师官方下载
  • 产品展示网站php源码提交百度收录
  • 网站建设日志杭州今天查出多少阳性
  • 微信小游戏制作平台搜索引擎优化的主要工作
  • 网站做导航设计的作用是什么seo工具网站
  • dedecms采集规则各类网站seo顾问是干什么
  • 珠海网站建设珠海易推网页面seo优化
  • dede系统做的网站如何调用cu3er官网flash 3d焦点图指数查询
  • 苏州新港建设集团有限公司网站东莞优化疫情防控措施
  • 怎样做酒店网站ppt推销
  • 做app 的模板下载网站有哪些百度推广怎么优化关键词的质量
  • 做网站前台模型要做什么呢软文写作技巧有哪些
  • 正能量不良网站直接进入如何建一个自己的网站
  • 绝对域名做网站站长素材网站
  • 自己怎么做网站赚钱吗重庆seo排名优化费用
  • php做网站开发关键词排名的工具
  • 如何做二级网站做网站推广一般多少钱
  • dede网站白屏恢复正常百度
  • b2b2c商城源码众志seo
  • 境外网站不备案盈利网页搭建