개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.17 17:47

str.substr(start, length) (사용 자제) 관련 질문

  • 보안전문가 13시간 전 2025.03.17 17:47 새글
  • 2
    1
제가 str.substr(start, length) 함수를 사용할 때 문제가 생겨서 도움을 요청하고 싶습니다.

제가 str.substr(start, length) 함수를 사용할 때는 start 인덱스부터 length 만큼의 문자열을 추출하는 것으로 알고 있습니다. 하지만, 만약 str.length < start + length 인 경우에는 substring이 잘못된 결과를 반환하는 것으로 알고 있습니다.

str.substr(start, length) 함수에서 만약 str.length < start + length 인 경우에는 어떻게 처리해야 하는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  13시간 전



    str.substr(start, length) 함수에서 만약 str.length < start + length 인 경우에는 잘못된 결과를 반환하지 않도록 하려면, start + length를 str.length와 비교하여 작은 값을 반환하거나, 에러를 발생시킬 수 있습니다.

    예를 들어, 다음과 같이 처리할 수 있습니다.

    - start + length를 str.length와 비교하여 작은 값을 반환하는 방법

    #hostingforum.kr
    javascript
    
    let str = "Hello";
    
    let start = 5;
    
    let length = 10;
    
    
    
    if (start + length > str.length) {
    
        console.log(str.substring(start, str.length));
    
    } else {
    
        console.log(str.substr(start, length));
    
    }
    
    


    - 에러를 발생시키는 방법

    #hostingforum.kr
    javascript
    
    let str = "Hello";
    
    let start = 5;
    
    let length = 10;
    
    
    
    if (start + length > str.length) {
    
        throw new Error("잘못된 인덱스");
    
    } else {
    
        console.log(str.substr(start, length));
    
    }
    
    


    - start + length를 str.length와 비교하여 잘못된 인덱스를 반환하는 방법

    #hostingforum.kr
    javascript
    
    let str = "Hello";
    
    let start = 5;
    
    let length = 10;
    
    
    
    if (start + length > str.length) {
    
        console.log("잘못된 인덱스");
    
    } else {
    
        console.log(str.substr(start, length));
    
    }
    
    

    2025-03-17 17:48

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 4,307건 / 9 페이지

검색

게시물 검색