myNumber = [[1,2], [3,4], [5,6]];
Array.isArray(123);
false
Array.isArray(words); //words = [];
true
let arr = [code, states];
console.table(arr); // 직접 실습해보기
let words = ['Radagast', 'the', 'Brown'];
words.indexOf('the'); // 1
words.indexOf('Brown'); // 2
보이는 것과 같이 indexOf()는 인덱스를 반환하고, includes()는 해당 요소가 있는지의 여부를 판별하여 Boolean값을 반환한다.
그러면 indexOf()로는 Boolean값을 반환할 수 없을까?
✅ 비교연산자를 이용하여 나타낼 수 있다.
unshift() // 첫 번째 요소 추가
shift() // 첫 번째 요소 삭제
push() // 마지막 요소 추가
pop() // 마지막 요소 삭제
✅ 여기서 내가 헷갈렸던 점은, 기존 배열이 해당 메서드에 의해 수정될 수 있다는 점이다. 꼭 주의하기 👀
배열 그대로든 요소만 넣든 상관없이 요소 형태로 arr에 추가된다.
splice() 메서드는 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경합니다.
const months = ['Jan', 'March', 'April', 'June'];
months.splice(1, 0, 'Feb'); // 해당 인덱스에 추가
console.log(months);
// months = ["Jan", "Feb", "March", "April", "June"]
months.splice(4, 1, 'May'); // 마지막 인덱스 삭제 후 추가 (요소 변경)
console.log(months);
// months = ["Jan", "Feb", "March", "April", "May"]
months.splice(1, 1, ‘Hello!’); // 요소 내용 변경
console.log(months);
// months = ["Jan", “Hello!”, "March", "April", "May"]
months.splice(1, 1, [1,2,3]);
["Jan", Array(3), "March", "April", "June"]
// 배열 형태로 추가하면 배열 그대로 요소에 들어간다.(해당 인덱스가 배열이고 이중배열이 됨.)
✅ 객체의 값을 사용하는 방법 두가지
let user = {
firstName: ~,
city: ~,
content: ~
};
// Dot notation일 경우
user.firstName;
user.city;
// Bracket notation일 경우
user[‘firstName’];
user[‘city’];
user[content] !== user['content'] //다르다...!
key값이 변할 때! (동적)
let tweet = {
writer: ‘sojeong’,
content: ‘hi’
};
tweet[‘category’] = ‘잡담’
tweet.isPublic = true;
tweet.tags = [‘#코드스테이츠’, ’#프리코스’];
delete tweet.content;
‘content’ in tweet; //true
‘updatedAt’ in tweet; //false
const object1 = {
a: 'somestring',
b: 42,
c: false
};
console.log(Object.keys(object1)); // output = ["a", "b", "c"]
// 객체의 key값이 추출된다... 배열로 리턴됨.
배열과 객체 각각의 문제풀이는 어려움이 없었지만 두 조건이 하나에 합쳐질 경우, 예를 들자면 객체의 Value 값으로 Array가 있는 문제에 약한 듯 하다.
이중배열, 객체 안 배열 등 문제풀이에 익숙해지고 코플릿 객체 15. Select 문제는 헬프데스크행😆