[Suggestion] 建议在“构造函数和 "new" 运算符”章节末尾增加与现代 ES6 Class 的对比/过渡说明
还没有人认领这个 Issue。
评估
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 新手友好度
- 68/100
- Issue 类型
- 文档
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- javascript
调研方向
从 https://zh.javascript.info/constructor-new 的“Constructors and the new operator”章节开始,找到其源代码和摘要部分。添加一则简短说明,涵盖编辑器警告、构造函数与类在缺少 new 时的差异,以及后面的 Class 章节;当说明准确、清晰,并与教程现有风格保持一致时即可完成。
由索引模型根据 Issue 内容生成。
描述
我在学习“构造函数和 'new' 运算符”这一章节时,在现代编辑器(如 Zed)中尝试编写了页面中的示例代码:
function User(name) {
this.name = name;
this.isAdmin = false;
}
let user = new User("Jack");
此时编辑器(内置的 TypeScript/JavaScript 语言服务)会弹出一个非常显眼的重构提示:
"This constructor function may be converted to a class declaration."
对于初学者来说,看到这个提示可能会产生困惑(“既然教程教我用构造函数,为什么现代工具极力推荐我换成 class?”)。
Suggested Improvement
为了让教程更具现代前瞻性,并完美衔接后续的 “Class” 章节,建议在本章末尾(例如在“总结”之前)增加一个小提示(Notice/Sidebar),简要说明:
- 为什么现代工具会给出这个提示: 解释这是因为 ES6 引入了
class,它是构造函数的更安全的现代语法糖。 - 核心区别(防错机制): 简述构造函数漏写
new会隐式失败(或污染全局),而class漏写new会直接抛出TypeError,这也是 Linter/IDE 推荐重构的核心原因。 - 引导: 告诉读者现在可以继续学习构造函数以理解底层,后面会有专门的章节介绍
class。
这样可以及时解答读者在实际敲代码时遇到的编辑器警告,让教程与现代开发工具的反馈更加契合。
- 主要语言
- HTML
- 星标
- 10.8k
- 派生
- 1.2k
- PR 合并指标
- 30 天内没有已合并 PR
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
javascript-tutorial/zh.javascript.info 的其他 Issue
-
难度 1/5 1 小时以内 新手友好度 62/100
javascript-tutorial/zh.javascript.info#1243 · 1 条评论 ·
-
难度 1/5 1 小时以内 新手友好度 45/100
-
难度 2/5 1-3 小时 新手友好度 45/100
javascript-tutorial/zh.javascript.info#1264 · 1 条评论 ·
-
难度 1/5 1 小时以内 新手友好度 55/100
-
Operand 术语不一致 未关闭
难度 1/5 1-3 小时 新手友好度 45/100
javascript-tutorial/zh.javascript.info#1260 · 1 条评论 ·
查看 javascript-tutorial/zh.javascript.info 的全部 Issue
相似的 Issue
-
Add: hunch 未关闭
难度 2/5 1-3 小时 新手友好度 74/100
AbdelStark/awesome-typesafe#104 ·
-
难度 2/5 1-3 小时 新手友好度 65/100
-
A11y ♿️
难度 2/5 1-3 小时 新手友好度 72/100
-
automated issue report
难度 2/5 1-3 小时 新手友好度 85/100
-
documentation improve or update documentation priority/low triage
难度 2/5 半天 新手友好度 86/100
warpdotdev/docs#782 · 1 条评论 ·