ts 이 코드를 컴파일하면 오류가 발생하지만 다음 두 가지 방법을 사용하면 오류가 발생하지 않습니다. 공식 홈페이지의 설명이 제 이해력을 넘어서네요. ts 구문이 너무 캐쥬얼하다는 느낌만 들 뿐이에요...
으아아아또는
으아아아이런 식으로 오류가 보고되지 않습니다. 단언(as/>)을 사용할 때 인터페이스는 어떤 규칙에 따라 비교됩니까? 그런 다음 개체 리터럴을 변수에 복사합니다. 이것이 개체에 대한 참조 포인터라는 것을 알고 있지만 추가 속성이 감지되지 않는 이유는 무엇입니까? 공식 홈페이지 주소
첫 번째 예:
as
不是断言吧as
是强制转化 就说明你知道你要做的事情 当然 ts 也就让你编译过了第二个例子 好像本来就应该过的吧
color
你又不是一定要;colour
는 또 다른 속성입니다.이것이 이전에 사용되지 않은 이유는 ts가 객체 리터럴에 대한 고유한 검사를 가지고 있기 때문입니다
as는 변수를 다른 유형으로 강제로 사용하는 강제 유형 변환입니다. 런타임 중에 발생하는 문제에 대한 책임은 사용자에게 있습니다.
객체 리터럴을 사용하여 객체를 할당하는 감지 논리는 변수를 사용하여 객체를 할당하는 메커니즘과 다릅니다.