programing

문자열을 정의할 수 있습니까?TypeScript에서 비어 있습니까?

instargram 2023. 7. 16. 12:31
반응형

문자열을 정의할 수 있습니까?TypeScript에서 비어 있습니까?

나는 TypeScript와 C#의 코드 규약을 조사하고 있으며 우리는 사용할 규칙을 찾았습니다.string.Empty대신에""C#으로

C# 예:

doAction("");
doAction(string.Empty); // we chose to use this as a convention.

TypeScript:

// only way to do it that I know of.
doAction("");

이제 제 질문은 이 규칙을 TypeScript에서도 일관성 있게 유지할 수 있는 방법이 있는지 아니면 이 언어가 특정한 것인지에 대한 것입니다.

TypeScript에서 빈 문자열을 정의하는 방법에 대한 포인터가 있습니까?

이 작업을 수행하려면 코드를 작성하여 다음 작업을 수행할 수 있습니다.

interface StringConstructor { 
    Empty: string;
}

String.Empty = "";

function test(x: string) {

}

test(String.Empty);

보다시피 합격에 차이가 없을 것입니다.String.Empty아니면 그냥"".

유형이 있습니다.String에서 정의를 찾을 수 있습니다.lib.d.ts(이 라이브러리가 정의된 다른 위치도 있습니다.)다음에 대한 유형 멤버 정의를 제공합니다.String와 같이 일반적으로 사용되는.fromCharCode다음을 사용하여 이 유형을 확장할 수 있습니다.empty새 참조 형식 스크립트 파일에 있습니다.

문자열 확장자.ts

declare const String: StringExtensions;
interface StringExtensions extends StringConstructor {
    empty: '';
}
String.empty = '';

그리고 나서 그것을 부르는 것.

기타 파일.ts

doAction(String.Empty); // notice the capital S for String

string.Empty는 .NET에 고유합니다(감사 @Servy).

빈 문자열을 만드는 방법은 다음과 같습니다.""

정말로 다른 방법들이 있습니다, 예를 들면.new String()또는''하지만 당신은 신경써야 합니다.new String()문자열 프리미티브가 아니라 비교할 때 다른 String-object를 반환하기 때문입니다(여기에 명시된 바와 같이: https://stackoverflow.com/a/9946836/6754146) ).

언급URL : https://stackoverflow.com/questions/42674511/is-it-possible-to-define-string-empty-in-typescript

반응형