Cute Bow Tie Hearts Blinking Pink Pointer

백엔드/Javascript

[Javascript] 배열 prototype 메서드, 속성, 객체 속 객체

청포도 에이드 2022. 1. 4. 15:42
728x90

목차

-자바스크립트 메서드, 속성 차이

-프로토타입 배열, 객체

-객체 속 객체


typeof = 예약어

데이터 타입 알아내는 함수

arr.length 배열 길이 알아내는 함수

push 배열 맨 뒤에다 값 하나 추가하는 행위

메서드와 속성 차이

메서드는 뒤에 () 붙는다. (액션을 취해준다.)
속성은 뒤에 () 없다. 가지고 있는 것만으로 표현한다.

prototype 찍어보면 메서드, 속성 확인 가능하다.


숙지해놓자.


<< 배열 마지막 원소 추출할 때 >>

 

console.log(arr[arr.length-1])

자바 스크립트 프로토타입

 

  1. at: ƒ at()
  2. concat: ƒ concat()
  3. constructor: ƒ Array()
  4. copyWithin: ƒ copyWithin()
  5. entries: ƒ entries()
  6. every: ƒ every()
  7. fill: ƒ fill()
  8. filter: ƒ filter()
  9. find: ƒ find()
  10. findIndex: ƒ findIndex()
  11. flat: ƒ flat()
  12. flatMap: ƒ flatMap()
  13. forEach: ƒ forEach()
  14. includes: ƒ includes()
  15. indexOf: ƒ indexOf()
  16. join: ƒ join()
  17. keys: ƒ keys()
  18. lastIndexOf: ƒ lastIndexOf()
  19. length: 0
  20. map: ƒ map()
  21. pop: ƒ pop()
  22. push: ƒ push()
  23. reduce: ƒ reduce()
  24. reduceRight: ƒ reduceRight()
  25. reverse: ƒ reverse()
  26. shift: ƒ shift()
  27. slice: ƒ slice()
  28. some: ƒ some()
  29. sort: ƒ sort()
  30. splice: ƒ splice()
  31. toLocaleString: ƒ toLocaleString()
  32. toString: ƒ toString()
  33. unshift: ƒ unshift()
  34. values: ƒ values()
  35. Symbol(Symbol.iterator): ƒ values()
  36. Symbol(Symbol.unscopables): {copyWithin: true, entries: true, fill: true, find: true, findIndex: true, …}
  37. [[Prototype]]: Object
  38. constructor: ƒ Object()
  39. hasOwnProperty: ƒ hasOwnProperty()
  40. isPrototypeOf: ƒ isPrototypeOf()
  41. propertyIsEnumerable: ƒ propertyIsEnumerable()
  42. toLocaleString: ƒ toLocaleString()
  43. toString: ƒ toString()
  44. valueOf: ƒ valueOf()
  45. __defineGetter__: ƒ __defineGetter__()
  46. __defineSetter__: ƒ __defineSetter__()
  47. __lookupGetter__: ƒ __lookupGetter__()
  48. __lookupSetter__: ƒ __lookupSetter__()
  49. __proto__: (...)
  50. get __proto__: ƒ __proto__()
  51. set __proto__: ƒ __proto__()
  52.  

데이터타입
string
number
boolean
array []
object {}

Json == object (javascript object)

array 변수하나에 데이터를 여러개 집어넣는다.


console.log 뜻 console안에 log라는 메서드를 사용하겠다.

 

즉,     . 의미: ~에 존재하는, ~의 요소인

 

사실 배열은 객체와도 같다. << 자바스크립트에서만

자바스크립트 : 프로토타입형태의 언어.

 

 

자바스크립트 객체

 

 

obj = {name: "podo",
        height: 172,
        weight: 50}

obj라고 선언한 객체의 속성들을 가져오려면?

 

        console.log(obj["weight"]) //첫번째
        
        console.log(obj.weight)    //두번째

두 가지 방법이 있는데. 주로 아래 것을 사용한다.

 

 

또한 객체 안의 속성 안에 다시 객체를 넣을 수 있다.. 리스트 또한 넣을 수 있다. (웬만한건 다 되는 듯)

 

편의상(원래는 이렇게 하면 안됨) 블록이라고 객체명을 지정하겠다.

        블록 = {
            name:"podo",
            create: function(){ //익명함수
                console.log('함수 생성')
            },
            block:{
                index:1,
                nonce:1023
            },
            list:[
                10, 20, 30
            ]
                    
        }

 

블록 객체 안 name이라는 key의 속성값을 알아내려면?

 

console.log(블록.name) //속성

 

블록 객체 안 함수를 사용하려면?

 

console.log(블록.create()) //메서드

 

 

※ 여기서 알 수 있는 사실!! ※

 

앞서 언급했던 메서드와 속성의 차이를 되뇌어보자.

 

메서드는 뒤에 () 붙는다. (액션을 취해준다.) --> ( ) 소괄호 안에 파라미터(인자)가 들어감
속성은 뒤에 () 없다. 가지고 있는 것만으로 표현한다.

 

 

객체 속 객체

 

 

위의 블록이라는 객체 안에 있는 block이라는 객체의 nonce값이 궁금하다면?

 

console.log(블록.block.nonce)

 

리스트의 개수가 궁금하다면?

 

console.log(블록.list.length)

 

 

 

728x90