문자열 연산

·2022년 10월 28일
0

더하기 연산자

  • 문자열의 더하기는 연산되지않고 그냥 나열됨
  • 문자와 숫자가 만나면 문자열로 인식됨
<script>
num = 11 + 22; //숫자 + 숫자 = 33(number)
num = "안녕" + "자바스크립트" + "!"; //문자열+문자열+문자열 = 안녕자바스크립트!(string)
num = "11" + 22; //문자열 + 숫자 = 1122 (string)
num = 11 + `22`; //숫자 + 문자열 = 1122 (string)
</script>
  • 문자열이 먼저 나올경우 숫자는 연산되지 않고 그냥 나열됨
<script>
num = `다음 수의 합은?` + 11 + 22; //다음 수의 합은?1122 (string)
</script>
  • 숫자가 먼저 나올경우 연산 후 문자열로 반환
<script>
num = 11 + 22 + `의 합은?`; //33의 합은? (string) 
</script>

빼기 연산자

  • 숫자형 문자열은 숫자로 인식해 연산됨
  • 문자열이 포함되어있으면 NaN 반환
<script>
num = 11 - 22; //숫자 + 숫자 = -11 (number)
num = `안녕` - `자바스크립트` - `!`; //문자열-문자열-문자열 = NaN(Not a Number)
num = `11` - 22; //문자열 - 숫자 = -11 (number)
num = 11 - `22`; //숫자 - 문자열 = -11 (number)
</script>

곱하기 연산자

  • 숫자형 문자열은 숫자로 인식해 연산됨
  • 문자열이 포함되어있으면 NaN 반환
<script>
num = 11 * 22; //숫자 * 숫자 = 242 (string)
num = `안녕` * `자바스크립트` * `!`; // = NaN(Not a Number)
num = `11` * 22; //문자열 * 숫자 = 242 (number)
num = 11 * "22"; //숫자 * 문자열 = 242 (number)
</script>

산술 연산자에서

  1. 더하기 연산자를 제외한 다른 연산자는 문자열 데이터를 연산할 수 없다.

    '즐거운' + '자바스크립트' + '입니다' -> 즐거운자바스크립트입니다
    '즐거운' - '자바스크립트' + '입니다' -> NaN
    '즐거운' * '자바스크립트' + '입니다' -> NaN

  2. 더하기 연산자를 제외한 다른 연산자는 숫자형 문자열일 경우 숫자로 자동 변환하여 연산한다.

  3. 문자열 앞 뒤로 더하기 연산자가 아닌 연산자가 있을경우 NaN 반환

    • 문자열이 먼저 나온경우
      '자바스크립트' + 10 + 20 = 자바스크립트1020(나열)
    • 숫자가 먼저 나온경우
      10 + 20 + '자바스크립트' = 30자바스크립트(연산 후 나열)
    • 문자열 앞 뒤로 더하기 연산자가 아닌 연산자가 있을 경우
      '자바스크립트' - 10 + 20 = NaN
      10 + 20 * '자바스크립트' = NaN
profile
저녁놀 마을 사람

0개의 댓글

관련 채용 정보