JavaScript에서 문자열을 자르려면 어떻게해야합니까?
답변
IE9 + 이후의 모든 브라우저에는 trim()
문자열에 대한 메소드가 있습니다.
를 지원하지 않는 브라우저의 경우 MDNtrim()
에서이 polyfill을 사용할 수 있습니다 .
if (!String.prototype.trim) {
(function() {
// Make sure we trim BOM and NBSP
var rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
String.prototype.trim = function() {
return this.replace(rtrim, '');
};
})();
}
상기 것을 사용하는 경우 jQuery
, $.trim(str)
또한 사용 가능하며 손잡이 / 널을 미정.
이것 좀 봐:
String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g, '');};
String.prototype.ltrim=function(){return this.replace(/^\s+/,'');};
String.prototype.rtrim=function(){return this.replace(/\s+$/,'');};
String.prototype.fulltrim=function(){return this.replace(/(?:(?:^|\n)\s+|\s+(?:$|\n))/g,'').replace(/\s+/g,' ');};
답변
해당 프레임 워크를 이미 사용중인 경우 jQuery 의 트림 이 편리합니다.
$.trim(' your string ');
jQuery를 자주 사용하는 경향이 있으므로 문자열을 자르는 것이 자연 스럽습니다. 그러나 jQuery에 대한 백래시가있을 수 있습니까? 🙂
답변
위의 많은 정답이 있지만 String
JavaScript 의 객체 .trim()
에는 ECMAScript 5 와 같은 기본 메소드가 있습니다. 따라서 이상적으로 트림 방법의 프로토 타입을 만들려는 시도가 이미 먼저 존재하는지 확인해야합니다.
if(!String.prototype.trim){
String.prototype.trim = function(){
return this.replace(/^\s+|\s+$/g,'');
};
}
기본적으로
JavaScript 1.8.1 / ECMAScript 5 에 추가됨
따라서 다음에서 지원됩니다.
Firefox : 3.5 이상
사파리 : 5+
Internet Explorer : IE9 + (표준 모드에서만!) http://blogs.msdn.com/b/ie/archive/2010/06/25/enhanced-scripting-in-ie9-ecmascript-5-support-and-more .aspx
크롬 : 5+
오페라 : 10.5+
ECMAScript 5 지원 테이블 : http://kangax.github.com/es5-compat-table/
답변
있다 구현을 많이 사용할 수 있습니다. 가장 명백한 것은 다음과 같습니다.
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g, "");
};
" foo bar ".trim(); // "foo bar"
답변
여기 간단한 버전 JavaScript 트림의 일반적인 기능은 무엇입니까?
function trim(str) {
return str.replace(/^\s+|\s+$/g,"");
}
답변
이 질문은 3 년 전에 요청 된 것으로 알고 있습니다. 이제 String.trim()
JavaScript로 기본적으로 추가되었습니다. 예를 들어 다음과 같이 직접 트리밍 할 수 있습니다.
document.getElementById("id").value.trim();
답변
jQuery를 사용하는 경우 jQuery.trim()
함수를 사용하십시오 . 예를 들면 다음과 같습니다.
if( jQuery.trim(StringVariable) == '')