当前位置:首页>python>Python 零基础100天—Day69 JavaScript 基础

Python 零基础100天—Day69 JavaScript 基础

  • 2026-08-19 15:16:43
Python 零基础100天—Day69 JavaScript 基础

JavaScript 基础 — 网页的肌肉

🕐 预计用时:2-3 小时 | 🎯 目标:掌握 JS 变量、函数、DOM 操作、事件处理和 AJAX


📖 今日目录

  1. JavaScript 是什么?
  2. 变量与数据类型
  3. 函数
  4. 条件与循环
  5. DOM 操作
  6. 事件处理
  7. AJAX 请求
  8. ES6+ 新特性
  9. 今日练习
  10. 今日小结

1. JavaScript 是什么?

# JavaScript = 网页的编程语言
# HTML → 骨架(结构)
# CSS  → 皮肤(样式)
# JS   → 肌肉(交互)

# JS 能做什么?
# - 点击按钮弹出提示
# - 表单验证(不刷新页面)
# - 动态加载数据(AJAX)
# - 动画效果
# - 单页应用(React/Vue)
# - 服务端开发(Node.js)
<!-- 在 HTML 中引入 JS -->
<!-- 方式1:内部脚本 -->
<script>
    console.log('Hello, JavaScript!');
</script>

<!-- 方式2:外部脚本(推荐) -->
<script src="main.js"></script>

2. 变量与数据类型

// 变量声明(ES6+ 推荐用 let 和 const)
let name = 'Alice';     // 可变变量
const PI = 3.14159;     // 不可变常量
var age = 25;           // 旧语法(不推荐)

// 数据类型
let str = 'Hello';         // 字符串
let num = 42;              // 数字(整数和小数不分)
let bool = true;           // 布尔
let nothing = null;        // 空值
let undef = undefined;     // 未定义
let arr = [1, 2, 3];      // 数组
let obj = {name: 'Alice', age: 25};  // 对象

// 类型检查
typeof str;    // 'string'
typeof num;    // 'number'
typeof arr;    // 'object'(数组也是对象!)
Array.isArray(arr);  // true

// 字符串模板(反引号)
let greeting = `Hello, ${name}! You are ${age} years old.`;

📋 Python vs JavaScript 对比

特性
Python
JavaScript
变量声明
x = 10let x = 10;
常量
无(约定大写)
const PI = 3.14;
字符串模板
f"Hello {name}"`Hello ${name}`
列表/数组
[1, 2, 3][1, 2, 3]
字典/对象
{'a': 1}{a: 1}
None/null
Nonenull
 / undefined
布尔
True / Falsetrue / false
行末分号
不需要
可选(推荐加)

3. 函数

// 函数声明
function greet(name) {
    return `Hello, ${name}!`;
}

// 箭头函数(ES6+,推荐)
const greet = (name) => `Hello, ${name}!`;

// 默认参数
const greet = (name = 'World') => `Hello, ${name}!`;

// 多行箭头函数
const calculate = (a, b) => {
    let sum = a + b;
    let product = a * b;
    return { sum, product };
};

// 调用
greet('Alice');       // 'Hello, Alice!'
greet();              // 'Hello, World!'
calculate(3, 4);      // { sum: 7, product: 12 }

📋 数组方法(最常用)

let nums = [1, 2, 3, 4, 5];

// map — 映射(Python: 列表推导式)
nums.map(x => x * 2);         // [2, 4, 6, 8, 10]

// filter — 过滤(Python: 列表推导式 + if)
nums.filter(x => x > 3);      // [4, 5]

// reduce — 归纳(Python: functools.reduce)
nums.reduce((acc, x) => acc + x, 0);  // 15

// find — 查找第一个匹配
nums.find(x => x > 3);        // 4

// forEach — 遍历(Python: for 循环)
nums.forEach(x => console.log(x));

// includes — 包含(Python: in)
nums.includes(3);              // true

// sort — 排序
[3, 1, 4, 1, 5].sort((a, b) => a - b);  // [1, 1, 3, 4, 5]

4. 条件与循环

// 条件判断
if (score >= 90) {
    console.log('优秀');
} else if (score >= 60) {
    console.log('及格');
} else {
    console.log('不及格');
}

// 三元表达式
let result = score >= 60 ? '及格' : '不及格';

// 逻辑运算符(和 Python 一样用 && ||)
if (age >= 18 && hasTicket) {
    console.log('允许入场');
}

// for 循环
for (let i = 0; i < 5; i++) {
    console.log(i);
}

// for...of(遍历数组)
for (let item of [1, 2, 3]) {
    console.log(item);
}

// for...in(遍历对象属性)
let person = {name: 'Alice', age: 25};
for (let key in person) {
    console.log(`${key}: ${person[key]}`);
}

// while
while (count > 0) {
    count--;
}

5. DOM 操作

DOM(Document Object Model) 是浏览器把 HTML 转换成的 JS 可操作的对象树。

// 获取元素
let el = document.getElementById('myId');
let els = document.querySelectorAll('.myClass');  // 返回所有匹配
let first = document.querySelector('.myClass');   // 返回第一个

// 修改内容
el.textContent = '新文本';           // 纯文本
el.innerHTML = '<strong>加粗</strong>';  // HTML

// 修改样式
el.style.color = 'red';
el.style.fontSize = '20px';
el.style.display = 'none';          // 隐藏

// 修改属性
el.setAttribute('href', 'https://python.org');
el.getAttribute('class');
el.classList.add('active');          // 添加类
el.classList.remove('active');       // 移除类
el.classList.toggle('active');       // 切换类

// 创建元素
let newDiv = document.createElement('div');
newDiv.textContent = '我是新元素';
newDiv.className = 'card';
document.body.appendChild(newDiv);   // 添加到页面

// 删除元素
el.remove();

// 获取/设置表单值
let input = document.querySelector('
#username');
let value = input.value;             // 获取值
input.value = 'Alice';              // 设置值

6. 事件处理

// 方式1:addEventListener(推荐)
let btn = document.querySelector('#myBtn');
btn.addEventListener('click', function() {
    alert('按钮被点击了!');
});

// 方式2:箭头函数
btn.addEventListener('click', () => {
    console.log('clicked');
});

// 常用事件
// click      — 点击
// dblclick   — 双击
// mouseenter — 鼠标进入
// mouseleave — 鼠标离开
// keydown    — 按键按下
// keyup      — 按键抬起
// input      — 输入框变化(实时)
// change     — 值改变(失焦后)
// submit     — 表单提交
// load       — 页面加载完成

// 事件对象
btn.addEventListener('click', (event) => {
    console.log(event.target);       // 被点击的元素
    console.log(event.type);         // 'click'
    event.preventDefault();           // 阻止默认行为
});

// 表单提交
let form = document.querySelector('#myForm');
form.addEventListener('submit', (e) => {
    e.preventDefault();               // 阻止表单默认提交
    let username = document.querySelector('#username').value;
    console.log('提交:', username);
});

7. AJAX 请求

// fetch API(现代方式,推荐)
// GET 请求
fetch('/api/users')
    .then(response => response.json())
    .then(data => {
        console.log(data);
    })
    .catch(error => console.error(error));

// POST 请求
fetch('/api/users', {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
    },
    body: JSON.stringify({
        name: 'Alice',
        email: 'alice@example.com'
    })
})
.then(response => response.json())
.then(data => console.log(data));

// async/await(更优雅的写法)
async function getUsers() {
    try {
        let response = await fetch('/api/users');
        let data = await response.json();
        console.log(data);
    } catch (error) {
        console.error('请求失败:', error);
    }
}
getUsers();
// 实战:动态加载文章列表
async function loadPosts() {
    let container = document.querySelector('#posts');

    try {
        let response = await fetch('/api/posts/');
        let data = await response.json();

        container.innerHTML = data.results.map(post => `
            <div class="post-card">
                <h3>${post.title}</h3>
                <p>${post.summary}</p>
                <span>👁 ${post.views}</span>
            </div>
        `).join('');
    } catch (error) {
        container.innerHTML = '<p>加载失败</p>';
    }
}

// 页面加载完成后执行
document.addEventListener('DOMContentLoaded', loadPosts);

8. ES6+ 新特性

// 解构赋值
let {name, age} = person;           // 对象解构
let [first, second] = [1, 2];       // 数组解构

// 展开运算符
let arr1 = [1, 2, 3];
let arr2 = [...arr1, 4, 5];         // [1, 2, 3, 4, 5]
let obj1 = {a: 1};
let obj2 = {...obj1, b: 2};         // {a: 1, b: 2}

// 可选链(?.)
let city = user?.address?.city;      // 安全访问嵌套属性

// 空值合并(??)
let name = input ?? '默认值';        // input 为 null/undefined 时用默认值

// 模块导入导出
// math.js
export const add = (a, b) => a + b;
export default class Calculator { ... }

// main.js
import Calculator, { add } from './math.js';

9. 今日练习

🏋️ 练习 1:计数器

# 用 JS 实现一个计数器:
# - 显示当前数字
# - +1 按钮
# - -1 按钮
# - 重置按钮
# - 数字为负时显示红色,正数显示绿色

🏋️ 练习 2:待办列表

# 用 JS 实现一个待办列表:
# - 输入框 + 添加按钮
# - 点击添加 → 显示在列表中
# - 点击某项 → 划掉(完成状态)
# - 每项有删除按钮

🏋️ 练习 3:API 数据加载

# 用 fetch 从你的 Django API 加载数据:
# - GET /api/posts/ → 显示文章列表
# - 点击某篇文章 → 显示详情
# - 处理加载状态和错误

10. 今日小结

知识点
核心内容
变量
let(可变)/ const(不可变)/ var(弃用)
数据类型
string/number/boolean/null/array/object
函数
function 声明 / 箭头函数 => / 默认参数
DOM
querySelector / textContent / style / classList
事件
addEventListener / click / submit / preventDefault
AJAX
fetch + then / async+await
ES6+
解构 / 展开 / 可选链 / 模块

🚀 明日预告:Day 70 — 前后端交互

前端三件套(HTML/CSS/JS)学完了!明天把前后端连起来——用 fetch 调用 Django API,实现真正的前后端分离。这是从"学技术"到"做产品"的最后一环!

轻松时刻:

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-08-22 05:20:33 HTTP/2.0 GET : https://f.mffb.com.cn/a/507409.html
  2. 运行时间 : 0.798581s [ 吞吐率:1.25req/s ] 内存消耗:4,550.94kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=b1c2c68318137477b76d9f0b1e789090
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000877s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001365s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.001580s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.009600s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001488s ]
  6. SELECT * FROM `set` [ RunTime:0.009077s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001705s ]
  8. SELECT * FROM `article` WHERE `id` = 507409 LIMIT 1 [ RunTime:0.052122s ]
  9. UPDATE `article` SET `lasttime` = 1787347234 WHERE `id` = 507409 [ RunTime:0.097926s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.007598s ]
  11. SELECT * FROM `article` WHERE `id` < 507409 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001223s ]
  12. SELECT * FROM `article` WHERE `id` > 507409 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.002096s ]
  13. SELECT * FROM `article` WHERE `id` < 507409 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.018879s ]
  14. SELECT * FROM `article` WHERE `id` < 507409 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.283092s ]
  15. SELECT * FROM `article` WHERE `id` < 507409 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.142336s ]
0.804623s