错误TS2365:运算符'!=='无法应用于类型'“(”'和'“)”'

用户名
function myFunc(id: string) {
  id = "(";
};

let id: string = ")";
if (id !== '(')
  throw "Expected '(' in prototype";

myFunc(id);

if (id !== ')')
  throw "Expected ')' in prototype";

如果我以内联方式进行更改,则不会出现以下错误

error TS2365: Operator '!==' cannot be applied to types '"("' and '")"'.

比较的内容无关紧要。可以使用任何字符串a,basdasd,cqwe等代替(和)

埃文·塞巴斯蒂安(Evan Sebastian)

发生的是类型变窄。在传递第一个if语句之后,将类型限制id为字符串文字“)”,因为否则将引发异常。

function myFunc(id: string) {
  id = "(";
};
// Note that this function does nothing, but it's not the issue here

let id: string = ")";

if (id !== '(')
  throw "Expected '(' in prototype";
// id is narrowed to "("

myFunc(id);

// now id and ')' does not have same type, hence the error
if (id !== ')')
  throw "Expected ')' in prototype";

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

EF-无法将运算符'=='应用于类型'TId'和'TId'的操作数

运算符“>”不能应用于类型“布尔”和“数字”吗?

运算符“ +”不能应用于类型“ Number”和“ 1”

React / TypeScript错误:运算符“ <”不能应用于类型“ boolean”和“ RegExp”

错误的“运算符'!=='无法应用于类型'false'和'true'。” 错误?

错误错误TS2365:运算符“ <=”不能应用于类型“字符串”和“数字”

如何纠正错误运算符'&&'不能应用于类型为'bool'的操作数?和“布尔”

运算符<无法应用于类型Number和boolean

错误CS0019:运算符'<'无法应用于类型为'string'和'int'的操作数

运算符'||' 无法应用于类型为'string'和'string'的操作数(如何解决此问题)

为什么会收到错误消息“运算符无法应用于字符串和整数类型的操作数”?

运算符'=='不能应用于错误类型'int'和'string'的操作数

奇怪的错误“运算符'*'无法应用于类型'double'和'decimal'的操作数”

出现错误,无法将运算符应用于类型为system.datetime和string的操作数

运算符'=='不能应用于类型'Type?'的操作数 和“类型?”

运算符+不能应用于IntPtr和int类型的操作数-.Net 3.5

LINQ运算符'=='不能应用于类型'char'和'string'的操作数

C#错误运算符*不能应用于类型为'string'和'string'的操作数

无法将运算符'=='应用于类型'System,.Nullabe <decimal>'和'System.Nullable <double>'错误

错误CS0019:运算符'<='无法应用于c#控制台应用程序中类型'double'和'decimal'的操作数

错误消息:运算符“+”不能应用于“字符串”和“方法组”类型的操作数

运算符 && 不能应用于 double 和 bool 类型的操作数

函数错误:“二元运算符‘+’不能应用于‘Double’和‘Int’类型的操作数”

错误:二元运算符“-=”不能应用于“Int?”类型的操作数 和'国际'

'运算符'*'不能应用于'System.__ComObject'和'double''类型的操作数?

运算符“&&”不能应用于“Task<bool>”和“bool”类型的操作数

运算符 '>' 不能应用于类型 'boolean' 和 '{ return: Observable<any>; }' 错误

运算符“+”不能应用于“数字”和“数字”类型。为什么?

如何解决错误:运算符“==”不能应用于“方法组”和“int”类型的操作数