반응형
Notice
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 데이터과학
- 소프트웨어
- 자바스크립트
- 빅데이터
- 데이터분석
- 컴퓨터공학
- 머신러닝
- 파이썬
- 2
- 프로그래밍언어
- 컴퓨터과학
- 딥러닝
- 컴퓨터비전
- 네트워크
- 버전관리
- 데이터구조
- 클라우드컴퓨팅
- I'm Sorry
- 프로그래밍
- 자료구조
- 소프트웨어공학
- 사이버보안
- 보안
- 알고리즘
- 코딩
- Yes
- 웹개발
- 데이터베이스
- 네트워크보안
- 인공지능
Archives
- Today
- Total
스택큐힙리스트
JavaScript에서 변수가 문자열인지 확인하십시오. 본문
반응형
자바스크립트에서 변수가 문자열인지 아니면 다른 타입인지 어떻게 확인할 수 있을까요?
답변 1
이 방법이 나에게 동작합니다:
if (typeof myVar === 'string' || myVar instanceof String)
// 이건 문자열입니다
else
// 다른 종류의 값입니다
// 이 접근법을 테스트하세요:
let isString = value => typeof value === 'string' || value instanceof String;
let falseCases = [
[ 'null', null ],
[ 'undefined', undefined ],
[ 'object', { a: 1, b: 2 } ],
[ 'array', [ 1, 2, 3 ] ],
[ 'number', 123 ],
[ 'zero', 0 ],
[ 'RegExp', new RegExp('hello') ],
[ 'number with valueOf returning string', Object.assign(10, { valueOf: () => 'abc' }) ],
[ 'object pretending to be string', { constructor: String } ]
];
let trueCases = [
[ 'empty literal string', '' ],
[ 'unicode string literal', String.fromCharCode(10000) ],
[ 'empty boxed string', new String('') ],
[ 'unicode boxed string', new String(String.fromCharCode(10000)) ],
[ 'string with overwritten constructor', Object.assign('hi', { constructor: Array }) ],
[ 'string with overwritten toString', Object.assign('hi', { toString: 123 }) ],
[ 'string with overwritten valueOf', Object.assign('hi', { valueOf: 123 }) ],
[ 'string with overwritten constructor', Object.assign('hi', { constructor: RegExp }) ],
[ 'proxied string', new Proxy(new String('hello'), {}) ],
];
console.log('NEGATIVE TESTS:');
for (let [ name, val ] of falseCases) {
console.log(`Test ${name}:\n Expect: false\n Got: ${isString(val)}`);
}
console.log('\nPOSITIVE TESTS:');
for (let [ name, val ] of trueCases) {
console.log(`Test ${name}:\n Expect: true\n Got: ${isString(val)}`);
}
답변 2
JavaScript에서 변수가 문자열인지 확인하는 방법에 대해 알아보겠습니다. JavaScript는 동적 타입의 언어이기 때문에 변수의 타입이 런타임 중에 결정됩니다. 때문에 변수가 문자열인지 확인하기 위해서는 몇 가지 방법을 사용할 수 있습니다.1. typeof 연산자: typeof 연산자는 변수의 타입을 반환합니다. 변수가 문자열이라면 string을 반환하며, 아닐 경우 다른 타입을 반환합니다. 따라서, 다음과 같이 사용하여 변수가 문자열인지 확인할 수 있습니다:
```
if(typeof 변수 === string){
// 변수는 문자열입니다.
}
```
2. instanceof 연산자: instanceof 연산자는 특정 타입의 객체를 확인할 때 사용됩니다. JavaScript에서 문자열은 String 객체로 처리되므로, instanceof 연산자를 사용하여 변수가 문자열인지 확인할 수 있습니다:
```
if(변수 instanceof String){
// 변수는 문자열입니다.
}
```
3. 자료형 추론: JavaScript는 동적 타입 언어이기 때문에 변수의 타입을 추론할 수 있습니다. 변수를 일시적으로 String 객체로 변환하고, 변환된 값을 확인하여 변수가 문자열인지 확인할 수 있습니다:
```
if(String(변수) === 변수){
// 변수는 문자열입니다.
}
```
위의 방법들을 사용하여 JavaScript에서 변수가 문자열인지 확인할 수 있습니다. 각 방법에 따라 코드를 작성하여 변수의 타입을 확인하고, 필요에 따라 해당 코드를 사용할 수 있습니다. 변수가 문자열이 아닌 다른 타입일 경우, 추가적인 조치를 취할 수도 있습니다. 이러한 방법들은 JavaScript 개발자들에게 유용하며, 프로그램의 신뢰성을 높이는 데 도움을 줄 수 있습니다.
이 문서는 JavaScript에서 변수가 문자열인지 확인하는 방법에 대한 설명을 포함하고 있습니다. JavaScript 프로그램을 개발하는 개발자들에게 도움이 될 것이라고 기대합니다. JavaScript 변수 타입 확인, 변수가 문자열인지 확인하기, JavaScript 문자열 타입 확인 등과 같은 검색어를 이용하여 이 문서를 찾을 수 있도록 SEO를 고려하였습니다.
반응형
Comments