我在 TypeScript 中有以下函数(我无法更改参数的顺序),
user(firstName: string, lastName?: string, address?: string);
当我只需要传递
firstName
和 address
时,作为 lastname
传递的更好/合适/推荐值是多少?
case 1: user("Jack", undefined, "NY");
或
case 2: user("Jack", null, "NY");
每种方法的优缺点是什么?
您应该使用未定义。
这个:
lastName?: string
告诉我们
lastName
参数的类型为 string | undefined
。所以使用 null
是非法的(在严格模式下,这还不错)。使用未定义。
我发现了这个Typescript 编码风格指南,它指出你应该始终使用 undefined 和 not null,
null 和 未定义
- 使用未定义。不要使用 null。
无论如何请检查这里,
undefined
表示变量已声明但尚未赋值。
null
是一个赋值值。它可以分配给变量作为无值的表示。所以为了达到optional
的目的,我认为undefined
会更好。