var myStr = "Teacher Yourself jQuery";
문자열 생성 시 바로 추가할 수 없는 특별한 문자들 존재
더보기
\' - 작은 따옴표
\" - 큰 따옴표
\\ - 역 슬래쉬
\n - 개행
\r - 캐리지 반환
\t - 탭
\b - 백스페이스
\f - 폼 피드
var numOfChars = myStr.length;
문자열의 길이를 알 수 있다.
메소드 | 설명 |
charAt(인덱스) | 인덱스 위치 문자 반환 |
charCode(인덱스) | 인덱스 위치 문자의 유니코드 값 반환 |
concat(str1, str2, ... ) | 두 개 이상의 문자열을 합치고 반환 |
fromCharCode() | 유니코드 값을 실제 문자로 변환 |
indexOf(subString) | subString 값이 처음으로 나타난 위치 반환, 없을 경우 -1 반환 |
lastIndexOf(subString) | subString 값이 마지막으로 나타난 위치 반환, 없을 경우 -1 반환 |
match(regex) | 문자열을 탐색하여 정규 표현식과 일치하는 것 반환 |
replace(subString / regex / replacementString) |
subString, regex과 일치하는 문자열 탐색, 일치한 subString을 새로운 subString으로 변경 |
search(regex) | 정규 표현식에 맞는 문자열 탐색 -> 처음 일치한 위치 반환 |
slice(start, end) | start위치와 end 위치 사이 문자열 부분이 제거된 새로운 문자열 반환 |
split(sep, limit) | 구분자 or 표현 정규식에 맞는 문자열을 부분문자열의 배열로 분할 인수 옵션 limit - 부분문자열의 최대 수 정의 |
substr(start, length) | 문자열 중 시작된 시작 위치부터, length만큼 문자열 추출 |
substring(from, to) | from 인덱스부터 to 인덱스 사이 문자들의 부분문자열 반환 |
toLowerCase() | 소문자로 변환 |
toUpperCase() | 대문자로 변환 |
valueOf() | 문자열의 기본값을 반환 |
- 단어 치환
var username = "Brad";
var output = "<username> please enter your password: ";
output.replace("<username>", username);
- 문자열 배열로 쪼개기
var t = "12:10:36"
var tArr = t.split(":");
var hour = tArr[0];
var minute = tArr[1];
var second = tArr[2];
배열
Array 객체를 조작하는 메소드
메소드 | 설명 |
concat(arr1, arr2) | 인수로 전달된 배열 결합한 배열 반환 |
indexOf(value) | value 값을 찾아 첫 번째 인덱스 반환 (항목이 없으면 -1 반환) |
join(구분자) | 모든 요소들을 명시된 구분자로 분리된 하나의 문자열로 결합 (기본 콤마) |
lastIndexOf(value) | value 값을 찾아 마지막 인덱스 반환 (없으면 -1 반환) |
pop() | 마지막 요소 제거하고 해당 요소 반환 |
push(item1, item2, ...) | 배열 끝에 하나 이상의 새로운 요소 추가하고, 새로운 길이 반환 |
reverse() | 배열 순서 반전 |
shift() | 배열 첫번째 요소를 제거하고 해당 요소 반환 |
slice(start, end) | start와 end 인덱스 사이의 요소들을 반환 |
sort(sortFunction) | 배열의 요소들을 정리 (sortFunction은 선택적으로 사용) |
splice(인덱스, count, item1, item2, ...) | 인덱스에서 count 수만큼 요소들을 삭제한 다음, item이 인수로 전달 된 경우 해당 인덱스 위치에 삽입 |
toString() | 배열을 문자열 형태로 반환 |
unshift() | 시작 부분에 새로운 요소 추가 후 새로운 길이 반환 |
배열을 이용한 반복문 (for/in 루프)
var week = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'];
for (dayIndex in week) {
console.log("<li>" + week[dayIndex] + "</li>");
}
코드 예외 사항이 JS내의 문제 때문에 발생한다면 스크립트는 실행되지 않을 것이고 로딩은 끝나지 않는다.
이런 문제를 막기 위해 try/catch 작성.
try/catch 블록
try블록 안의 코드 실행 도중 에러 발생 시 전체 스크립트 중단하는 대신 catch 부분 실행
에러 발생하지 않는다면, try 블록 전체 실행되고 catch 블록은 실행되지 않는다.
ex)
try {
var x = badVarName;
} catch (err) {
console.log(err.name + ': "' + err.message + '"');
}
catch문이 에러 객체인 err 인자를 전달 받고 있다.
에러 객체는 발생한 에러 형식의 이름인 name 속성과 message 속성을 제공한다
ReferenceError: "badVarName is not defined"
+ 사용자 정의 예외 처리
function sqrRoot (x) {
try {
if (x=="") throw {message: "Can't Square Root Nothing."};
if (xisNaN(x)) throw {message: "Can't Square Root Strings."};
if (x<0) throw {message: "Sorry No Imagination"};
return "sqrt("+ x +") = " + Math.sqrt(x);
} catch (err) {
return err.message;
}
}
function writeIt() {
console.log(sqrRoot("four"));
console.log(sqrRoot(""));
console.log(sqrRoot("4"));
console.log(sqrRoot("-4"));
}
writeIt();
3장) Node.js 입문 (0) | 2019.12.23 |
---|---|
2장) 자바스크립트 기본 학습 (1) (0) | 2019.12.20 |
1장) Node.js-to-AngularJS 스택 소개 (0) | 2019.12.19 |
ep) 책 소개 (0) | 2019.12.19 |