我正在尝试像这样对 bigint 进行位移动:
let foo = BigInt(420) << 32;
但是我收到了 JavaScript 错误:运算符'<<' cannot be applied to types 'bigint' and 'number'.
如何在 JavaScript 中对 bigint 进行位移位?
正如 James 作为评论所建议的,并且根据 左移运算符的 MDN 文档(<<),运算的两边必须相同,要么都是数字,要么都是 BigInts。所以你应该在数字文字的末尾(例如 16n 和 32n),将它们声明为 BigInt 或显式创建它们。 不知道这是否真的是您的问题,因为抛出的异常与我在控制台上尝试时不同,但我希望它有所帮助。
另外,如果它有帮助,请不要将其标记为已回答,因为我想窃取詹姆斯的功劳哈哈哈。我只是想扩展一下答案。