如何使用 ES 模块在现代 JavaScript 中有效地声明一个 set 和 get 函数来处理 cookies?

How to declare efficiently a set and get functions for handling cookies in modern JavaScript with ES modules?

我目前正在开发一个需要对 cookie 进行基本管理(获取和设置)的库。我可以使用 js-cookie,但我尽量避免依赖。

我想知道处理这个问题的最佳方法是什么。以下是我想到的不同实现方式,但我不确定哪个更相关,或者是否有更好的实现方式。


1。具有两个独立的功能

export function getCookie() {
    // code
};

export function setCookie() {
    // code
};

2。有一个函数和两个方法

export function Cookie {
    this.get = function () {
        // code
    };

    this.set = function () {
        // code
    };
}

3。使用 class 和 2 个方法

一个。经典方式

export class Cookie {
    get() {
      // code
    };

    set() {
      // code
    };
}

乙。导出实例

class Cookie {
    get() {
        // code
    };

    set() {
        // code
    };
}

export new Cookie();

C。使用静态方法

export class Cookie {
    static get() {
        // code
    };

    static set() {
        // code
    };
}

非常感谢您的意见。

Cookie 是全局的,因此我们假设您不需要一个对象的多个实例和方法。这排除了解决方案 #2 和 #3A。它.

如果您只想创建两个函数,绝对没有理由将它们放在 class 上,所以也可以 。使用解决方案 #1,这是最简单和最有效的。