찾다

 >  Q&A  >  본문

할당되지 않은 개체는 Typescript에서 오류를 확인할 수 없습니다.

다음 js를 typescript로 변환하려고 하는데 account 객체가 할당되지 않아 코드가 빌드되지 않기 때문에 검사하는 데 문제가 있습니다.

으아아아

위 코드는 js에서 잘 작동했기 때문에 다음 ts로 변환했지만 이제 아무것도 할당하기 전에 account 변수를 사용하려고 하므로 최종 if이 컴파일되지 않습니다.

으아아아

account 개체를 변경하여 비어 있는지 또는 정의되지 않았는지 확인하는 방법은 무엇입니까? 구체적으로 null로 설정해 보았으나 개체를 null로 설정할 수 없다고 합니다.

P粉986860950P粉986860950263일 전560

모든 응답(2)나는 대답할 것이다

  • P粉904450959

    P粉9044509592024-04-02 09:49:17

    변수를 할당하기 전에 변수를 사용할 수 없는 문제에 대한 해결책은 매우 간단합니다. 값을 할당하기만 하면 됩니다.

    초기 값이 未定义,这就是已声明但未赋值的变量所发生的情况。或者您可以使用更有意的“无值”初始值,例如 null임을 지정할 수 있습니다.

    물론 이렇게 하면 변수 유형이 이 초기 값을 포함하는 공용체로 변경되지만 사용 방식과 일치하므로 문제가 되지 않을 것 같습니다.

    그런데 object 并不是一个很好用的类型。如果您有 linting,您可能会收到警告。某种形式的记录가 더 유용하고 명확합니까?

    회신하다
    0
  • P粉752290033

    P粉7522900332024-04-02 09:29:28

    그때 ->

    으아아아

    Typescript에 계정은 하나만 가능하다고 알려주세요 对象,但是 Typescript 会让你延迟分配它,但是如果它检测到有可能永远不会将对象分配给帐户,它会给你 -> 变量“account”在分配之前使用。

    실제 시험 보는 것처럼 대접하세요 -> if (account) {

    논리적으로 당신의 유형은objectundefined

    으아아아

    어떤 경우에는 값을 명시적으로 설정 해제하는 것이 더 합리적일 수 있으므로 일부 사람들은 null -> let account:object |空=空

    을 사용하는 것을 좋아합니다.

    회신하다
    0
  • 취소회신하다