JS 의 String 클래스

3769 단어
JS 의 String 유형
문자열 의 특성
  • 은 0 개 이상 의 16 비트 Unicode 문자 로 구성 된다.
  • 따옴표 소포, 작은 따옴표 와 작은 따옴표 가 모두 가능 합 니 다.
  • 사용 .length 속성 은 문자열 의 길이 에 접근 할 수 있 습 니 다.
    var str1 = "xie";
    var str2 = "learn JS happily";
    console.log(str1.length); // 3
    console.log(str2.length); // 16
    
  • 문자열 이 생 성 되면 값 을 바 꿀 수 없습니다. 변경 하려 면 기 존 문자열 을 없 애고 새로운 값 을 포함 하 는 다른 문자열 로 변 경 량 을 채 워 야 합 니 다.
  • 전의 서열:

  • 줄 을 바 꾸 고 자주 사용 하 는 것 을 기억 해 야 한다.
  • \\ 평행봉 \ 은 자주 전의 로 사용 된다.
  • \’ 작은 따옴표 상용
  • \” 더 블 따옴표 상용

  • 아래 의 것 은 이해 만 하면 된다.
  • \t 탭 문자
  • \b 스페이스 바
  • \r 리 턴 부적
  • \f 페이지 문자
  • \xnn 16 진법, n 대표 0 - F
  • \unnnn 16 진 코드 로 하나의 unicode 문자
  • 를 표시 합 니 다.

    형식 변환
  • toString()
  • 다른 유형의 데 이 터 를 문자열 적용 유형 Number / Boolean / string / Object 매개 변수: number 형식의 수치 기수 로 변환 합 니 다.일반적으로 쓸 필요 가 없고 이해 만 해 야 하 며 2 / 8 / 16 진법 으로 전환 해 야 한다 면 써 야 한다.

  • String()
  • null
  • undefined
  • null 과 undefined 는 toString 방법 이 없 기 때문에 변환 할 때 String() 함 수 를 사용 합 니 다.
    var testNull = null;
    console.log(typeof testNull);//object 
    //var testString2=testNull.toString(); //Uncaught TypeError:Cannot read property 'toString' of null
    var testString3 = String(testNull);
    console.log(typeof testString3);//string
    

  • eval()
  • 문자열 표현 식 의 값 을 계산 하고 수치 로 되 돌려 줍 니 다.
    //eval
    var evalVal="1+2+5+8+10";
    console.log(typeof evalVal);//string
    console.log(evalVal); //"1+2+5+8+10"
    var evalComputed=eval(evalVal);
    console.log(evalComputed,typeof evalComputed);//26 "number"
    


  • 문자열 로 빠르게 변환
    //+""       
    var numVal=2;
    var boolVal=false;
    var nullVal=null;
    var undefinedVal=undefined;
    var numValPlus=numVal+"";
    var boolValPlus=boolVal+"";
    var nullPlus=nullVal+"";
    var undefinedPlus=undefinedVal+"";
    console.log(numValPlus,typeof numValPlus);
    console.log(boolValPlus,typeof boolValPlus);
    console.log(nullPlus,typeof nullPlus);
    console.log(undefinedPlus,typeof undefinedPlus);
    

    어떤 데 이 터 는 Number 형식 에 만 국한 되 는 것 이 아 닙 니 다.배열 도 가능 합 니 다.
    console.log([1,2,3,4]+"");//1,2,3,4
    

    문자열 을 빠르게 숫자 로 변환 합 니 다.
    console.log(+"1.2");
    
    console.log("1.1" + 1.1);  // "1.11.1"
    console.log(+"1.1" + 1.1); // 2.2
    
    //toString  ;
    //22 - > "22"
    console.log(typeof 22);
    console.log(typeof (22).toString());
    var testStr=22+"";//    toString  
    console.log(typeof testStr);
    //eval()
    console.log("00000000000000000");
    console.log(eval("22+12"));//"22+12" -> 22+12 ->34
    //
    console.log("**********************");
    console.log(typeof (22+""));//string  22 -> "22"
    console.log(typeof (+"22"));//"22" -> 22      +
    console.log([1,2,3,4]+"");//1,2,3,4
    console.log("**********************");
    console.log("1.1" + 1.1);
    console.log(+"1.1" + 1.1); // 2.2
    console.log((+"1.1") + (+1.1)); // 2.2
    

    맵 / reduce 활용
    //          
    function string2int(s){
        return s.split("").map((x)=>{return +x}).reduce((x,y)=>{return x*10+y});
    }
    string2int('12345') === 12345; // true
    

    refer:
    주안 방 의 블 로그
    Mozilla 공식 문서

    좋은 웹페이지 즐겨찾기