{
    "path": "/home/krm/dev/mimer-academia/programing/js/datatypes/Sections/array.sv.json",
    "s": "Ignor",
    "invert": true,
    "level": 1,
    "title": [
        "Array i JavaScript"
    ],
    "author": [
        "krm"
    ],
    "created": {
        "year": 2018,
        "month": 9,
        "day": 27
    },
    "status": "alpha",
    "description": [],
    "statments": [],
    "comment": [],
    "cards": [
        {
            "level": 1,
            "title": [
                "# 👁️‍🗨️ Om Array i JS"
            ],
            "description": [
                "För att programmera på ett effektivt sätt behöver du ha någon form av datastruktur som motsvara en lista."
            ],
            "statments": [
                {
                    "description": [
                        "JS har listor som en integrerad del av språket."
                    ]
                },
                {
                    "description": [
                        "Här tala vi om listor som väden och vanliga metoder som används."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "❓ Vad är Arrayer?"
            ],
            "description": [
                "Array är en lista av värden. Värden kan vara av vilken typ som helst."
            ],
            "lang": "js",
            "code": "let my_list = [1,\"b\",true];",
            "statments": [
                {
                    "description": [
                        "En lista defineras på fölajnde sätt:"
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "📣 Några kommentar om Arrayer"
            ],
            "description": [
                "En array är av typen objekt. array är en under typ till object."
            ],
            "statments": [
                {
                    "description": [
                        "Så allt du kan göra med objekt kan du också göra med en Array."
                    ]
                },
                {
                    "description": [
                        "typeof av en Array kommer vara \"object\"."
                    ]
                },
                {
                    "description": [
                        "Du bör försöka att undviak att använda en Array som ett Object."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "type": "application",
            "title": [
                "Vad kan vi använder Arrayer till?"
            ],
            "description": [
                "Listor kan användas för att hantera data på många olika sätt."
            ],
            "statments": [
                {
                    "description": [
                        "Det finns två vanliga sätt att använda en Array:er på:"
                    ]
                },
                {
                    "description": [
                        "Som en kö, först in blir också först ut."
                    ]
                },
                {
                    "description": [
                        "Som en stack, dvs hög, Sist in blir först ut."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "🀄️ Finns Arrayer i andra språk?"
            ],
            "description": [
                "Alla språk har stöd för någon typ av Array, men syntaxen kan vara betydligt krångligare. Anledningen är att Array är en rätt så \nineffektiva datastruktur och om du hanterar minnet mer så kan du \nförsöka använda något mer effektivt."
            ],
            "statments": [
                {
                    "description": [
                        "I C och C++ föredrar man inte dynamsika listor som också kallas Array."
                    ]
                },
                {
                    "description": [
                        "I Python hanteras array på ungefär samma sätt som i JS."
                    ]
                },
                {
                    "description": [
                        "PHP har också arrayer men dessa beter sig mer som objekt i JS."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "Att sätta in ett värde i en Array"
            ],
            "description": [
                "Ett värde kan tilldelas genom att använda \"=\" och en hård parantes."
            ],
            "statments": [
                {
                    "description": [
                        "Exempel: ",
                        "let a=",
                        [
                            {
                                "form": "important"
                            },
                            "1,2",
                            {
                                "form": "important"
                            },
                            " - "
                        ],
                        [
                            {
                                "form": "important"
                            },
                            "1,2",
                            {
                                "form": "important"
                            },
                            " - "
                        ],
                        "a",
                        [
                            "2",
                            {
                                "form": "important"
                            },
                            " -"
                        ],
                        "=3",
                        [
                            "2",
                            {
                                "form": "important"
                            },
                            " -"
                        ],
                        "a",
                        [
                            "0"
                        ],
                        "=\"hello\""
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "Att få ett värde ifrån en Array"
            ],
            "description": [
                "Ett värde kan fås genom att helt enkel skriva indexdu behöver innan för hårda paranteser."
            ],
            "statments": [
                {
                    "description": [
                        "Exempel: ",
                        "a",
                        [
                            {
                                "form": "important"
                            },
                            "2",
                            {
                                "form": "important"
                            }
                        ]
                    ]
                },
                {
                    "description": [
                        "Exempel: ",
                        "a",
                        [
                            {
                                "form": "important"
                            },
                            "2",
                            "3",
                            {
                                "form": "important"
                            }
                        ],
                        " + a",
                        [
                            {
                                "form": "important"
                            },
                            "2",
                            "3",
                            {
                                "form": "important"
                            }
                        ]
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "Listor i listor"
            ],
            "description": [
                "Vi kan ha listor i listor också."
            ],
            "lang": "js",
            "code": "let my_list = [1,\"b\",true];",
            "statments": [],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "🔄 Att konvertera till och från en Array"
            ],
            "description": [
                "För att konvertera till ett Array"
            ],
            "statments": [
                {
                    "description": [
                        "Number(",
                        [
                            ""
                        ],
                        ") //0 Tips: Detta kna ge upphov till många förvirande saker."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "🔬 Är detta en Array?"
            ],
            "description": [
                "Det går inte att bara använda \"typeof\" eftersom Array också är ett objekt."
            ],
            "statments": [
                {
                    "description": [
                        "Använd metoden ",
                        [
                            {
                                "form": "important"
                            },
                            "Array.isArray(array)"
                        ],
                        ", ",
                        [
                            {
                                "form": "important"
                            },
                            "array"
                        ],
                        " är metoden du vill undersöka."
                    ]
                },
                {
                    "description": [
                        "Exempel: ",
                        "Array.isArray(",
                        [
                            {
                                "form": "important"
                            },
                            "",
                            {
                                "form": "important"
                            },
                            " - "
                        ],
                        ")",
                        [
                            {
                                "form": "important"
                            },
                            "",
                            {
                                "form": "important"
                            },
                            " - "
                        ],
                        "Array.isArray({})",
                        " -"
                    ]
                },
                {
                    "description": [
                        "Array.isArray(true)"
                    ]
                },
                {
                    "description": [
                        "På riktig gammal webbläsare fungerar inte det, men det är inget problem för oss."
                    ]
                }
            ],
            "comment": [
                "Ett annat förslag är något liknade ",
                [
                    {
                        "form": "important"
                    },
                    "",
                    {
                        "form": "important"
                    },
                    ", men denna metod har tyvärr en del problem som du märker om du testar med "
                ],
                " instanceof Array",
                [
                    {
                        "form": "important"
                    },
                    "",
                    {
                        "form": "important"
                    },
                    ", men denna metod har tyvärr en del problem som du märker om du testar med "
                ],
                "{} instanceof Array",
                "."
            ]
        },
        {
            "level": 1,
            "title": [
                "Push"
            ],
            "description": [
                "Du kan lägga till ett värde sist i en Array genom att använd metoden ",
                [
                    {
                        "form": "important"
                    },
                    "push"
                ],
                "."
            ],
            "lang": "js",
            "code": "let arr=[\"a\", \"b\"];\narr.push(\"c\");\nconsole.log(arr);\n// [\"a\",\"b\",\"c\"]",
            "statments": [],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "Shift"
            ],
            "description": [
                "Du kan lägga till ett värde först i en Array genom att använd metoden ",
                [
                    {
                        "form": "important"
                    },
                    "shift"
                ],
                "."
            ],
            "lang": "js",
            "code": "let arr=[1, 2];\narr.shift(0);\nconsole.log(arr);\n// [0,1,2]",
            "statments": [],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "Pop"
            ],
            "description": [
                "Du kan ta bort sista värdet och returnera det genmom att använda metoden \"pop\"."
            ],
            "lang": "js",
            "code": "let arr=[\"a\",\"b\",\"c\"];\nlet c = arr.pop();\nconsole.log(arr);\n// [\"a\",\"b\"]\nconsole.log(c);\n// c",
            "statments": [],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "Unshift"
            ],
            "description": [
                "Du kan ta bort sista värdet och returnera det genmom att använda metoden \"shift\"."
            ],
            "lang": "js",
            "code": "let arr=[0, 1, 2];\nlet zero = arr.unshift();\nconsole.log(arr);\n// [1,2]\nconsole.log(zero);\n// 0",
            "statments": [],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "slice"
            ],
            "description": [
                "Slice är en metod som retrnerar en del av en Array. Den tar två parameter:"
            ],
            "lang": "js",
            "code": "let arr = [\"a\", \"b\", \"c\", \"d\"];\nlet short_arr = arr.slice(1,3);\nconsole.log(short_arr);\n// [\"b\", \"c\"]",
            "statments": [
                {
                    "description": [
                        "En start index där den nya array börjar."
                    ]
                },
                {
                    "description": [
                        "Ett slut index, den nya arrayen slutar innan det indexet."
                    ]
                },
                {
                    "description": [
                        "Den ursprungliga arrayen ändras inte alls."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "splice"
            ],
            "description": [
                "Splice är en metod som tar bort element i en array, den kan också lägga till värden på en valfritt index. Den har två eller fler parametrar."
            ],
            "lang": "js",
            "code": "let arr = [\"a\", \"q\", \"d\"];\narr.splice(1,1,\"b\",\"c\");\nconsole.log(arr);\n// [\"a\", \"b\", \"c\", \"d\"]",
            "statments": [
                {
                    "description": [
                        "En start index där element ska tas bort eller läggas till ifrån."
                    ]
                },
                {
                    "description": [
                        "En längd som avgör hur många element som ska tas bort."
                    ]
                },
                {
                    "description": [
                        "Ett antal parametrar som kommer adderas."
                    ]
                },
                {
                    "description": [
                        "Det är den array som anropar slice som kommer förändras."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "length"
            ],
            "description": [
                "Är kanske den alla vanligase använda egenskaper hos en array."
            ],
            "lang": "javascript",
            "code": "let arr = [\"a\", \"b\", \"c\"];\nfor(let i = 0; i < arr.length; i++) {\nconsole.log(i+\": \"+arr[i]);\n}",
            "statments": [
                {
                    "description": [
                        "Ger helt enkelt längden på en array"
                    ]
                },
                {
                    "description": [
                        "Används ofta i ",
                        [
                            {
                                "form": "important"
                            },
                            "for"
                        ],
                        " satser."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "for-of"
            ],
            "description": [
                "En bättre forsatts om du arbetar med arrayer."
            ],
            "lang": "js",
            "code": "let arr = [\"a\", \"b\", \"c\"];\nfor(const letter of arr) {\nconsole.log(letter);\n}",
            "statments": [
                {
                    "description": [
                        "Du ska använda ",
                        [
                            {
                                "form": "important"
                            },
                            "for-of"
                        ],
                        ", inte ",
                        [
                            {
                                "form": "important"
                            },
                            "for-in"
                        ],
                        " eller någon anna variant."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [],
            "description": [],
            "statments": [],
            "comment": []
        }
    ],
    "kind": "sections"
}