Object.values() 可以用在 Angular 项目中吗?

Can Object.values() be used in Angular Projects?

出现,但是Object.values()可以在Angular个项目中通用吗?

IIUC Angular 包含 CoreJS 并且它的目的是允许像 Object.values() 这样的东西在所有浏览器中可用?

取决于您的目标浏览器。它在不受支持的浏览器中不会这样工作。您可以找到支持浏览器的列表 here

也就是说,您仍然可以通过使用 Polyfills 在旧版浏览器中使用它。你可以找到这些 polyfills here.

Polyfills 用于代替不能作为浏览器的一部分使用的 JS。如果使用 tsconfig 中的 lib,它将 compile/transpile TypeScript 转换为 lib 数组中指定的 JavaScript 的合适版本。因此,将 lib: "es2017" 添加到 tsconfig 将意味着它不会在不隐式支持 ES2017 的浏览器上运行。

但是添加 Polyfill 意味着它也可以在不支持此脚本的浏览器上运行。

为了让 typescript 识别 Object.values,开发者应该添加到 tsconfig.json compilerOptions: {lib: ["esnext"]}。 Stackblitz 根本就没有这个设置。

Angular 绝对可以利用这个特性,因为它是 well supported 现代浏览器(除了旧的 IE,一如既往)