Javascript에서 문자열은 ' ' 혹은 " " 사이에 위치한다. 컴퓨터는 function을 함수를 동작 하라는 것인지 혹은 'function'이라는 단어를 뜻하는지 구분하지 못하기 때문에 문자열임을 알려주기 위해 구분이 필요하다.
우리는 문자열을 특정 방법을 통해 조작할 수 있다. 문자열의 길이를 확인하고, 문자열에서 n번째에 위치한 문자가 무엇인지 확인할 수도 있다. 이렇게 문자열을 조회 하거나 조작하기 위해 속성과 메소드를 알아볼 필요가 있다.
속성은 자바스크립트의 객체와 연관 되어 있는 어떤 값이다. 속성은 객체의 특징을 정의해준다. 예를 들어 객체 바나나는 노란색, 과일, 단맛과 같은 속성을 지니고 있다.
let banana = new object();
banana.color = 'yellow';
banana.taste = 'sweet';
banana.type = 'fruit'; // .name 형식으로 표현
let banana = {
color: 'yellow';
taste: 'sweet';
type: 'fruit';
}; // 중괄호 형식으로 표현
메소드는 액션을 취할 수 있게 해주는 속성이다. 이를 다른 말로 하면 메소드는 함수이며 속성이다.
In JavaScript functions themselves are objects, so, in that context, a method is actually an object reference to a function.
let str = 'iamdeveloper';
str.slice(0,4); === 'iamd'
// slice()메소드를 통해 문자열 인덱스의 0,1,2,3 을 추출
컴퓨터는 여러 부분에서 반복작업을 활용한다. 인간 보다 월등히 뛰어난 점이 바로 반복작업의 속도와 횟수다. 설령 단순한 기능을 구현한다 하여도 반복문이 없다면 몇십줄의 코드를 통해 구현해야 하지만, 반복문이 있다면 정말 압도적으로 짧은 코드를 통해 이를 구현할 수 있다.
Javascript는 코드를 1번줄 부터 차례대로 순차적으로 읽어 내려간다. 이러한 순서는 반복문에서 특히나 조건문이 함께 사용된 반복문에서 고려해야 할 사항이다.
function findLetter(find) {
let str = 'iamdeveloper';
for(let i = 0; i < str.length; i++) {
if(str[i] === find) {
return str.indexOf(find);
break;
}
}
}
반복문은 두가지 형태를 가지고 있다. for문과 while문이다. while문은 for문을 풀어 쓴 것이라 간단히 이해할 수 있다. for문과 while문의 엄밀한 차이는 다음과 같다.
while loop - used for looping until a condition is satisfied and when it is unsure how many times the code should be in loop
for loop - used for looping until a condition is satisfied but it is used when you know how many times the code needs to be in loop
for(let i = 0; i < someNumbers; i++) {
//실행할 명령
}
for문은 패러미터로 초기값; 조건문; 증감문; 세가지를 가지고 있으며 중괄호{} 내부에 반복 실행할 명령이 위치한다. 이때 명령에 조건문을 사용하여 특정 조건에서만 코드를 실행 시킬수도 있다.
while(조건) {
//실행할 명령
}
while문은 패러미터로 조건문만 가지고 있다. 조건이 참이라면 while내부의 명령을 반복 실행한다. while문을 실행할때 주의할 점은 조건이 참이라면 실행되기 무조건 반복실행 되기 때문에 무한반복에 빠질수 있다는 점이다. 따라서 일정 조건이 충족되면 break;를 통해 반복을 종료 시켜주거나 반복이 종료될 조건을 부여해 주어야 한다.
for(let i = 0; i < 3; i++) {
for(let j = 0; j < 3; j++) {
//실행할 명령
}
}
이중 반복문을 이해하기 위해 코드 실행의 순서대로 써보면
위와 같은 과정을 거치며 i = 0 에 대해 j가 3번 실행... 총 3*3 9번 반복이 실행된다. 결국 3행 3열을 가진 테이블에 각 칸에 실행 명령이 들어가 있고 모두 한번씩 실행되는 결과!