it-swarm.dev

JavaScript에서 기본 문자열 (문자열 리터럴)을 "인스턴스화"하는 방법

JavaScript에서는 다음과 같은 방법으로 문자열을 선언 할 수 있습니다.

var a = "Hello World";
var b = new String("Hello World");

그러나 a는 String의 인스턴스가 아닙니다 ...

console.log(a instanceof String); //false;
console.log(b instanceof String); //true;

그렇다면 문자열 리터럴 인 "instanceof"유형을 어떻게 찾습니까?

JavaScript가 모든 문자열 리터럴에 대해 new String()을 작성하도록 할 수 있습니까?

34
Matthew Layton

사용하다 typeof "foo" === "string" 대신에 instanceof.

71
Artur Udod

대신 typeof를 사용하고 결과 문자열을 비교하십시오. 자세한 내용은 docs 를 참조하십시오.

6
isaach1000

새 문자열을 만들기 위해 new String()을 작성할 필요가 없습니다. var x = 'test'; 문을 작성하면 x을 기본 데이터 유형의 문자열로 작성합니다. 객체 리터럴과 마찬가지로이 x에 사용자 지정 속성을 첨부 할 수 없습니다. 즉. x.custom = 'abc';x.custom는 정의되지 않은 값을 제공합니다. 따라서 필요에 따라 객체를 만들어야합니다. new String()은 문자열이 아닌 typeof() Object로 객체를 만듭니다. 이 객체에 사용자 정의 속성을 추가 할 수 있습니다.

2
Vishnudas Tekale