다음 js를 typescript로 변환하려고 하는데 account
객체가 할당되지 않아 코드가 빌드되지 않기 때문에 검사하는 데 문제가 있습니다.
위 코드는 js에서 잘 작동했기 때문에 다음 ts로 변환했지만 이제 아무것도 할당하기 전에 account 변수를 사용하려고 하므로 최종 if
이 컴파일되지 않습니다.
account
개체를 변경하여 비어 있는지 또는 정의되지 않았는지 확인하는 방법은 무엇입니까? 구체적으로 null로 설정해 보았으나 개체를 null로 설정할 수 없다고 합니다.
변수를 할당하기 전에 변수를 사용할 수 없는 문제에 대한 해결책은 매우 간단합니다. 값을 할당하기만 하면 됩니다.
초기 값이
未定义
,这就是已声明但未赋值的变量所发生的情况。或者您可以使用更有意的“无值”初始值,例如null
임을 지정할 수 있습니다.물론 이렇게 하면 변수 유형이 이 초기 값을 포함하는 공용체로 변경되지만 사용 방식과 일치하므로 문제가 되지 않을 것 같습니다.
그런데
object
并不是一个很好用的类型。如果您有 linting,您可能会收到警告。某种形式的记录
a>가 더 유용하고 명확합니까?그때 ->
으아아아Typescript에 계정은 하나만 가능하다고 알려주세요
对象
,但是 Typescript 会让你延迟分配它,但是如果它检测到有可能永远不会将对象分配给帐户,它会给你 ->变量“account”在分配之前使用。
실제 시험 보는 것처럼 대접하세요 ->
if (account) {
논리적으로 당신의 유형은
으아아아object
或undefined
어떤 경우에는 값을 명시적으로 설정 해제하는 것이 더 합리적일 수 있으므로 일부 사람들은
을 사용하는 것을 좋아합니다.null
->let account:object |空=空