분류
javascript
Javascript 30초 Snippet - String : URLJoin
본문
지정된 모든 URL 세그먼트를 결합한 다음 결과 URL을 정규화합니다.
https://github.com/30-seconds/30-seconds-of-code#bytesize
String.prototype.join( '/')을 사용하여 URL 세그먼트를 결합 한 다음 다양한 정규 표현식으로 일련의 String.prototype.replace()를 호출하여 결과 URL을 정규화하십시오 (이중 슬래시 제거, 프로토콜에 적절한 슬래시 추가, 슬래시 제거) 매개 변수는 '&'와 매개 변수를 결합하고 첫 번째 매개 변수 분리 문자를 정규화 하십시오).
const URLJoin = (...args) => args .join('/') .replace(/[\/]+/g, '/') .replace(/^(.+):\//, '$1://') .replace(/^file:/, 'file:/') .replace(/\/(\?|&|#[^!])/g, '$1') .replace(/\?/g, '&') .replace('&', '?');
ex)
URLJoin('http://www.google.com', 'a', '/b/cd', '?foo=123', '?bar=foo'); // 'http://www.google.com/a/b/cd?foo=123&bar=foo'
- 이전글Javascript 30초 Snippet - String : words 19.11.25
- 다음글Javascript 30초 Snippet - String : unescapeHTML 19.11.25