Javascript Cookbook

문자열 끝 공백 제거하기

문제

폼 요소에서 문자열을 가져올 때 양끝의 공백을 제거하고 싶다

해결

String 객체의 trim 메서드를 사용하면 된다.

var   txtBox  = document.getElementById("test");
var  lines  = txtBox.value.split("\n");
var  resultString = "";

for (var i = 0; i < lines.length; i++) {
    var strng = lines[i].trim();
    resultString += strng + "-";
}

document.getElementById("result").innerHTML=resultString;

설명

trim 메서드를 호출하면 간단하게 문자열 양끝의 공백을 제거할 수 있다.
trim 메서드는 IE8을 제외한 모든 브라우저에서 지원하고 있다. 아래 코드는 trim을 사용할 수 없는 브라우저에서도 문제가 발생하지 않도록 만든 우회법이다.

if (typeof String.trim == "undefined"){
    String.prototype.trim = function(){
        return this.replace(/(^\s*)|(\s*$)/g, "");
    }
}

ECMAScript 5에 새롭게 추가된 메서드에는 문자열 왼쪽 공백을 제거하는 trimLeft와 오른쪽 공백을 제거하는 trimRight가 있다.

예제보기 http://embed.plnkr.co/VBFHANBrcdz1DbTV8Jvp/preview