JavaScript의 String startsWith() 메소드



문자열이 다른 문자열로 시작하는지 확인해야 하는 경우 ES6의startsWith 메서드를 사용하십시오. 직관적으로 매우 포괄적이기 때문에 저는 이 방법을 정말 좋아합니다. 기술 배경 지식이 없더라도 코드를 읽는 것만으로도 indexOf와 비교하여 무슨 일이 일어나고 있는지 더 쉽게 추론할 수 있습니다 🤓

나는 자바스크립트가 가고 있는 방향이 정말 마음에 든다. 이 모든 유용한 방법을 소개하는 것뿐만 아니라 언어를 사람이 더 쉽게 읽을 수 있도록 발전시킵니다. 이것이 우리가 기술에 더 쉽게 접근할 수 있도록 하는 방법입니다. 더 쉽게 배울 수 있습니다. 좋아! 😍

const lunch = '🥗 🥪 🍮'

// Old Way
lunch.indexOf('🥗') === 0 // true

// ✅ ES6 Way
lunch.startsWith('🥗') // true

시작합니다() 매개변수


startsWith 메서드는 2개의 매개변수를 허용합니다.
  • 검색값
  • 스타팅 인덱스

  • 1. 검색 가치



    이것은 필수 필드입니다. 여기에서 검색 값을 전달합니다. 단일 문자 이상이 될 수 있습니다. 몇 가지 예를 보자

    단일 문자



    const name = 'Samantha Ming';
    
    name.startsWith('S'); // true
    name.startsWith('M'); // false
    

    여러 문자



    const name = 'Samantha Ming';
    
    name.startsWith('Sam'); // true
    name.startsWith('Min'); // false
    

    여러 단어



    const name = 'Samantha Ming';
    
    name.startsWith('Samantha M'); // true
    name.startsWith('antha Min'); // false
    

    전체 문자열



    const name = 'Samantha Ming';
    
    name.startsWith('Samantha Ming'); // true
    

    문자열 길이 초과



    const name = 'Samantha Ming';
    
    name.startsWith('Samantha Ming is the best'); // false ← 😅
    

    2. 시작 지수



    따라서 기본적으로 시작 색인은 0 가 됩니다. 하지만 이 매개변수를 사용하면 다른 시작 위치에서 시작하도록 할 수 있습니다. 몇 가지 예를 살펴보겠습니다.

    기본 색인(0)



    const name = 'Samantha Ming';
    
    name.startsWith('S'); // true
    name.startsWith('S', 0); // true
    

    첫 번째 인덱스에서 시작



    프로그래밍을 처음 접하는 사람들을 위해. JavaScript는 0부터 시작합니다. 카운트가 0 에서 시작한다는 의미입니다. 따라서 첫 번째 문자는 0 인덱스에 있고 두 번째 문자는 1 인덱스에 있습니다 🤓

    const name = 'Samantha Ming';
    
    name.startsWith('am', 1); // true
    name.startsWith('am'); // false
    

    두 번째 색인에서 시작



    0부터 시작하는 계산에 따라 두 번째 색인은 세 번째 문자와 같습니다.

    const name = 'Samantha Ming';
    
    name.startsWith('ma', 2); // true
    name.startsWith('ma'); // false
    

    음수 시작 지수



    따라서 음수 인덱스는 작동하지 않습니다. 음수 인덱스를 전달하면 마지막 문자가 되는 음수 인덱스가 slice()와 유사하게 작동하는지 테스트하기 위해 영리하게 노력했습니다. 다시 한 번 증명해 보세요. 자바스크립트를 능가할 수 있다고 생각하지 마세요 😂

    const name = 'Samantha Ming';
    
    name.startsWith('g', -1); // false
    

    그것이 endsWith의 목적인 것 같습니다. 😜 다음 편에서 다루겠습니다.

    대소문자 구분



    명심해야 할 한 가지 중요한 사항은 startWith 메서드가 대소문자를 구분한다는 것입니다.

    const name = 'Samantha Ming';
    
    name.startsWith('sam'); // false
    

    브라우저 지원



    이것은 모든 최신 브라우저에서 지원됩니다. ....를 제외하고는 짐작하셨겠지만 Internet Explorer가 없습니다 😑. Polyfill이나 Babel과 같은 컴파일러를 사용해야 합니다.

    Browser Support

    커뮤니티 입력



    💬 문자열이 무언가로 시작하는지 확인하는 다른 방법을 알고 있습니까?

    커뮤니티에 물어본 질문입니다. 정말 좋은 것을 얻었습니다. 살펴보자👀

    검색 사용



    const lunch = '🥗🥪☕️';
    const search = '🥗';
    lunch.slice(0, search.length) === search;
    

    감사:

    정규식 사용



    'some string'.match(/^some/);
    
    // OR
    (/^some/).test('some string');
    

    감사:

    브래킷 사용



    하나의 단수 문자만 확인하는 경우 이를 시도해 볼 수 있습니다. 그러나 문자(예: hel)보다 많은 경우 이 방법이 작동하지 않습니다.

    const word = 'hello';
    
    word[0] === 'h';
    

    감사:

    성능 확인



    : 다음은 indexOfstartsWith 날아가는 것을 나타내는 그러한 테스트 중 하나입니다(JSPerf에서 발견, 제가 작성하지 않았습니다).
  • jsPerf: starsWith

  • 자원


  • MDN Web Docs: startsWith
  • w3schools: startsWith
  • Stack Overflow: How to check if a string “StartsWith” another string?
  • How to check if a string starts with another in JavaScript



  • 읽어주셔서 감사합니다 ❤
    안녕하세요! | | Facebook | Blog | SamanthaMing.com

    좋은 웹페이지 즐겨찾기