[ES6] 07. 문자열 거듭제곱,
JS에서 문자열 거듭제곱 연산을 하는 방법은 **repeat()** 메서드를 사용하는 것입니다. **repeat()** 메서드는 해당 문자열을 특정 횟수만큼 반복한 새로운 문자열을 반환합니다. 이 메서드의 인수로는 반복할 횟수가 들어갑니다.
예시 코드에서는 **repeat()** 메서드를 사용해 문자열 "hello"를 3번 반복한 문자열을 생성합니다.
```
const str = "hello";
const result = str.repeat(3); // 문자열 'hello'를 3번 반복한 문자열 생성
console.log(result); // 출력: "hellohellohello"
```
**repeat()** 메서드는 인수로 음수를 받으면 에러가 발생합니다. 인수로 소수를 받으면 정수로 변환합니다. 인수로 NaN을 받으면 0으로 취급합니다.
```
console.log("hello".repeat(-1)); // 에러 발생
console.log("hello".repeat(1.5)); // 'hello'를 1번 반복한 문자열 생성
console.log("hello".repeat(NaN)); // 빈 문자열 생성
console.log("hello".repeat(0)); // 빈 문자열 생성
```
[ES6] 07. 숫자를 거듭제곱,
ES6에서는 숫자를 거듭제곱할 수 있는 연산자인 **지수 연산자(Exponentiation Operator)**가 도입되었습니다. 기존의 거듭제곱을 구하는 방법인 Math.pow() 함수보다 간편하게 사용할 수 있습니다.
지수 연산자는 '**' 기호로 표시되며, 왼쪽에는 밑(base)이 오고, 오른쪽에는 지수(exponent)가 옵니다. 거듭제곱을 계산한 결과를 반환합니다.
예시 코드를 통해 살펴보겠습니다.
```
// 거듭제곱 계산 - 기존의 방식
const base = 2;
const exponent = 3;
const result1 = Math.pow(base, exponent);
console.log(result1); // 출력: 8
// 거듭제곱 계산 - ES6에서 도입된 지수 연산자
const result2 = base ** exponent;
console.log(result2); // 출력: 8
```
위 코드에서, 첫 번째 **Math.pow()** 함수 호출로 거듭제곱을 계산한 결과인 8이 출력됩니다. 이어서, 두 번째로 **지수 연산자**를 이용하여 거듭제곱 계산을 수행한 결과 또한 8이 출력됩니다. 이처럼 **지수 연산자**는 거듭제곱 연산을 간단하게 해주는 문법 요소입니다.
**지수 연산자**를 사용할 때에는 연산자의 우선순위가 다른 연산자보다 높으므로, 다른 연산자와 함께 사용할 때는 괄호로 감싸줘야 합니다.
```
// 지수 연산자와 함께 다른 연산자 사용
const base = 2;
const exponent = 3;
const result3 = 2 * base ** exponent + 1;
console.log(result3); // 출력: 17
```
#거듭제곱 #js #거듭제곱꼴 #지수의개념거듭제곱과거듭제곱근 #복소수의거듭제곱 #빠른거듭제곱계산 #jstutorial #제곱 #제곱수 #jstutorialforbeginners #세제곱수 #nodejs #node.js #키출판사 #매스캡슐 #2015개정
#js #거듭제곱 #문자열 #거듭제곱꼴 #복소수의거듭제곱 #jstutorial #문자열처리기본 #jstutorialforbeginners #문자 #제곱수 #세제곱수 #nodejs #node.js #자바스크립트 #코딩 #기초 #초보 #숫자 #연산
'컴퓨터공부 > Javascript' 카테고리의 다른 글
[ES6] 09. if조건문 true,false 조건문 만들기 (0) | 2023.05.26 |
---|---|
[ES6] 08. (더하기) 연산자와 (빼기,곱하기) 연산자가 다르다. (0) | 2023.05.25 |
[ES6] 07. 문자열 백틱,${} (0) | 2023.05.25 |
[ES6] 06. 숫자형 [ Infinity, 음수 무한대(-Infinity) , NaN , BigInt ] (0) | 2023.05.25 |
댓글