Javascript Cookbook

키워드 문자열을 여러 개의 키워드로 나누기

문제

여러 개의 키워드를 포함한 문자열이 있고, 각 키워드는 쉼표로 구분되어 있다. 문자열을 나누어 키워드 배열로 만들고 키워드 레이블과 함께 키워드를 출력하고 싶다

해결

String 객체의 split 메서드를 사용하여 쉼표를 기준으로 문자열을 분리한다. 분리된 값은 배열에 루프를 실행하여 출력한다.

<!DOCTYPE html>
<head>
<title>Example 1-1</title>
<script type="text/javascript">

window.onload = function() {

// get keyword list
var keywordList = prompt("Enter keywords, separated by commas","");

// use split to create array of keywords
var  arrayList = keywordList.split(",");

// build result HTML
var resultString = "";
for (var i = 0; i < arrayList.length; i++) {
resultString+="keyword: " + arrayList[i] + "<br>";
}

// print out to page
var  blk = document.getElementById("result");
blk.innerHTML = resultString;
}

</script>
</head>
<body>
<div id="result">
</div>
</body>
</html>

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

설명

String 객체의 split 메서드는 두 개의 인수를 갖는다. 첫번째 인수는 구분자로 사용할 문자이며 반드시 입력해야 한다. 두번째 인수는 몇 개로 나눌 것인지 정하는 숫자이며 생략할 수 있다.

var  arrayList = keywordList.split(",", 2); // 요소가 2개인 배열

문자열의 모든 문자를 나누고 싶다면 구분자로 빈 문자열('' 또는 "")을 전달하면 된다.

var  arrayList = keywordList.split("");