文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

JavaScript中怎样避免编写不良代码

2024-04-02 19:55

关注

这期内容当中小编将会给大家带来有关JavaScript中怎样避免编写不良代码,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

具有不同接口的替代类

由于重复,两个功能相同但接口不同的类并不好。

我们不想那样。 因此,我们可能要使用共享代码创建一个超类,然后使子类具有不同的方法。

库类不完整

重用并没有被高估。

图书馆建设者的工作艰巨。 他们可能会开设不完整的课程,但不允许我们修改它们以完成我们希望他们做的事情。

因此,这使库类对我们毫无用处,除非我们可以添加所需的功能。

我们可能必须直接向这些类添加新方法来解决此问题。

例如,如果我们导入了一个类,则可以通过编写以下代码来添加自己的方法:

const mixin = {   foo() {     //...   },   bar() {     //...   } } Object.assign(Foo.prototype, mixin);

在上面的代码中,我们将Foo类的原型中的代码与mixin对象中的方法合并,以使用Object.assign方法将更多方法合并到该类中。

数据类型

数据类是仅具有字段的类。

这些类可能被其他类过多地操作。

因此,如果所有公开领域都公开了,我们应该封装它们。

如果需要,我们还可以封装收集字段。

为了封装它们,我们可以将字段设为私有,并添加访问和设置它们的方法。

拒绝继承

子类继承父类可以访问它们的方法。

如果我们不需要父类中的这些类,则可以将它们下推到子类中。

然后,并不是所有的子类都将从父类继承方法,而它们仍然可以留在需要它们的子类中。

注释

评论对某些事情很有用。 我们可以评论为什么要执行某项操作,但是由于我们已经在代码中进行了操作,因此无需在评论中说明我们如何执行操作。

还注释代码是不好的。 首先,我们应该把它们带走,因为它们没有运行。

不属于自己的条件

我们应该将条件语句分成自己的一行,以便我们可以更轻松地阅读它们。

所以不用写:

if (foo) {   //... } if (bar) {   //... }

我们写:

if (foo) {   //... } if (bar) {   //... }

注释可选参数

可选参数在JavaScript中应具有默认值。 例如,我们可以编写以下代码来指示参数是可选的:

const foo = (a = 1) => {   //... }

JavaScript中怎样避免编写不良代码

> Photo by Samantha Gades on Unsplash

当心"死存储"

死存储是指我们为变量分配值,但不使用原始值就重新分配了值。

因此,我们实际上并不需要原始值,因此可以删除该行。

所以不用写:

let x = 1; x = 8 * 10;

我们写:

let x = 8 * 10;

不要反转我们的布尔值

双否定总是比直接条件表达式更难读。

因此,我们应该以更直接的方式编写是可能的。 例如,而不是写:

if (!(x > 10)) {    //... }

我们写:

if (x <= 10) {    //... }

如我们所见,第二条if语句比第一条if语句更易于阅读,并且更短。 他们都是一样的。

使用模板字符串

模板字符串是最好的JavaScript字符串。 我们可以在其中插入表达式,而其他任何类型的字符串都无法做到。

另外,我们可以通过在字符串中输入换行符来创建多行字符串。

由于反引号用作模板字符串的定界符,因此可以在字符串内部使用引号而不转义它们。

模板字符串很棒。 它们使我们可以做更多旧式弦弦无法完成的事情。

要向不完整的库类添加更多方法,我们可以使用Object.assign向它们添加自己的方法。

另外,我们需要封装数据类,以使您的代码不会与数据类紧密耦合。

上述就是小编为大家分享的JavaScript中怎样避免编写不良代码了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯