> 웹 프론트엔드 > JS 튜토리얼 > JavaScript는 PHP의 `range()`와 같은 내장 범위 함수를 제공합니까?

JavaScript는 PHP의 `range()`와 같은 내장 범위 함수를 제공합니까?

DDD
풀어 주다: 2024-12-09 19:46:15
원래의
313명이 탐색했습니다.

Does JavaScript Offer a Built-in Range Function Like PHP's `range()`?

JavaScript에는 PHP의 "range()"와 같은 내장 범위 함수가 있습니까?

PHP에서 range() 함수는 다음과 같습니다. 숫자 또는 영숫자로 지정된 범위 내의 값 배열을 생성하는 데 사용됩니다. 그러나 JavaScript는 유사한 기본 기능을 제공하지 않습니다. 이 기사에서는 JavaScript에서 이러한 기능을 구현하는 방법을 살펴봅니다.

숫자 범위

숫자 범위를 생성하려면 Array.from() 및 Array를 사용할 수 있습니다. 키() 메소드 결합:

[...Array(5).keys()]; // [0, 1, 2, 3, 4]
로그인 후 복사

이것은 원하는 숫자를 나타내는 0에서 4까지의 인덱스 값을 포함하는 배열을 생성합니다. range.

문자 범위

문자 범위의 경우 charCodeAt() 메서드와 함께 String.fromCharCode() 메서드를 사용하여 문자 코드를 다음으로 변환할 수 있습니다. 문자:

String.fromCharCode(...[...Array('D'.charCodeAt(0) - 'A'.charCodeAt(0) + 1).keys()].map(i => i + 'A'.charCodeAt(0))); // "ABCD"
로그인 후 복사

반복

for 루프를 사용하여 값 범위를 반복할 수도 있습니다.

for (const x of Array(5).keys()) {
  console.log(x, String.fromCharCode('A'.charCodeAt(0) + x));
} // 0,"A" 1,"B" 2,"C" 3,"D" 4,"E"
로그인 후 복사

함수

범위 생성 프로세스를 추상화하기 위해 다음을 만들 수 있습니다. 사용자 정의 함수:

function range(size, startAt = 0) {
    return [...Array(size).keys()].map(i => i + startAt);
}

function characterRange(startChar, endChar) {
    return String.fromCharCode(...range(endChar.charCodeAt(0) -
            startChar.charCodeAt(0), startChar.charCodeAt(0)))
}
로그인 후 복사

Lodash.js

Lodash 라이브러리를 사용하는 경우 해당 _.range() 함수를 이 목적으로 활용할 수 있습니다.

_.range(10); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
로그인 후 복사

ES6 이외의 브라우저 호환성

ES6을 지원하지 않는 이전 브라우저에서는 다음 대안을 사용할 수 있습니다.

Array.apply(null, Array(5)).map(function (_, i) {return i;}); // [0, 1, 2, 3, 4]
로그인 후 복사

위 내용은 JavaScript는 PHP의 `range()`와 같은 내장 범위 함수를 제공합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿