앞서 공부하고 정리한 개념들을 바탕으로 간단한 예제를 풀어보는 시간을 가져보자.
console.log(typeof NaN) // number
console.log([] == ![]) // true
const num = 01234;
console.log(num); // 668
console.log("Hello"+ +"World") // HelloNaN
console.log(+"111"); // 111
console.log(+[]); // 0
+true // 1
console.log([]+{}) // [object Object],
console.log(parseInt(null)); // NaN
parseInt (string, radix);
console.log(parseInt(null,24)); // 23
parseInt( String(null), 24 ) === 23
parseInt( "null", 24 ) === 23
parseInt( "n", 24 ) === 23
console.log(Math.min() < Math.max()); // false
Math.min(value1, value2, ..., valueN)
Math.max(value1, value2, ..., valueN)
- 매개변수로 받는 값은 배열이 아닌 단순히 입력된 숫자이다. 즉, 고유한 변수를 기대한다.
- 입력된 모든 값들은 숫자형으로 변환될 수 있는 타입이어야 한다.
그렇지 않으면 NaN을 반환하며, 매개변수를 생략하면 -Infinity를 반환한다.[참고]
console.log(Math.max(1,3,4)); // 4
console.log(Math.max('1','3','4')); // 4 - 문자열도 가능
console.log(Math.max()); // -Infinity
const a = 1;
const b = 123;
console.log(Math.min(a,b)); // 1
const arr = [1, 100, 40, 20, 5]
console.log(Math.min(arr)) // NaN - 배열은 숫자형으로 변환 불가능하므로 NaN 반환
console.log(Math.min(...arr)) // 1
console.log([,,,].length); // 3
// 배열 생성 (배열 크기 지정)
// 쉼표 개수만큼 크기가 지정됨
var arr = [,,,];
for (var i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
// 값이 할당되지 않아서 undefined 3번 출력
[참고]
console.log([,,,].join()) // ,,
let arr = ['사과', '바나나', '수박'];
let arrJoin1 = arr.join();
console.log(arrJoin1); // 사과,바나나,수박
let arrJoin2 = arr.join('');
console.log(arrJoin2); // 사과바나나수박
let arrJoin3 = arr.join('//');
console.log(arrJoin3); // 사과//바나나//수박
- join() 메서드만 사용할 경우 => ','가 기본적으로 붙어나옴. ex) 사과,바나나,수박
- join('') 메서드 안에 ''을 넣어주면 배열 사이사이 가 다 붙어서 문자열이 나옴. ex)사과바나나수박
- join('-') 메서드 안에 문자열을 넣으면 배열 사이사이 그 문자열을 넣어줌. ex) 사과-바나나-수박
const a = [1,2,3];
a[1] = "perl";
console.log(a); // [1, 'perl', 3]
const b = [1, 3, 5];
b[-1] = "perl";
console.log(b[-1]); // perl
console.log(b[b.indexOf(-1)]); // perl
console.log(b[b.indexOf("나비")]); // perl
string.indexOf(searchvalue, position)
indexOf 함수는, 문자열(string)에서 특정 문자열(searchvalue)을 찾고,
검색된 문자열이 '첫번째'로 나타나는 위치 index를 리턴합니다.
파라미터
searchvalue : 필수 입력값, 찾을 문자열
position : optional, 기본값은 0, string에서 searchvalue를 찾기 시작할 위치
찾는 문자열이 없으면 -1을 리턴한다.
문자열을 찾을 때 대소문자를 구분한다. [참고]