{
    "path": "/home/krm/dev/mimer-academia/programing/js/datatypes/Sections/number.sv.json",
    "s": "Ignor",
    "invert": true,
    "level": 1,
    "title": [
        "Tal i javascript"
    ],
    "author": [
        "krm"
    ],
    "created": {
        "year": 2018,
        "month": 9,
        "day": 27
    },
    "status": "alpha",
    "description": [],
    "statments": [],
    "comment": [],
    "cards": [
        {
            "level": 1,
            "title": [
                "# 👁️‍🗨️ Om hur js hanterar tal"
            ],
            "description": [
                "Till skilnnad ifrån många andra språk finns det bara en typ för tal i js, men tal kan ändå ställa till många problem."
            ],
            "statments": [
                {
                    "description": [
                        "Många av exemplerna på hur dåligt js är kommer ifrån konstiga tal konverteringar."
                    ]
                },
                {
                    "description": [
                        "Tal kan ge upphov till egendomliga avrundningsfel och detta är inbyggd i js."
                    ]
                },
                {
                    "description": [
                        "Vi försöker här undersöka vad tal är och ovanstånde problem."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "❓ Om hur js hanterar tal"
            ],
            "description": [
                "Till skilnnad ifrån många andra språk finns det bara en typ för tal i js, men tal kan ändå ställa till många problem."
            ],
            "statments": [
                {
                    "description": [
                        "Många av exemplerna på hur dåligt js är kommer ifrån konstiga tal konverteringar."
                    ]
                },
                {
                    "description": [
                        "Tal kan ge upphov till egendomliga avrundningsfel och detta är inbyggd i js."
                    ]
                },
                {
                    "description": [
                        "Vi försöker här undersöka vad tal är och ovanstånde problem."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "reflection": true,
            "title": [
                "Vad är Number?"
            ],
            "description": [
                "Number är datypen för tal i javascript."
            ],
            "statments": [
                {
                    "description": [
                        "Number är ett flyttal(\"float point numbers\")."
                    ]
                },
                {
                    "description": [
                        "Det betyder förenklat att Number är ett decimaltal."
                    ]
                },
                {
                    "description": [
                        "Består av 64 bits"
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "📣 Några kommentar om Numbers"
            ],
            "description": [
                "Number beter sig oftast \"snällt\", men det finns tillfällen då datorns implementering av Number har betydelse."
            ],
            "statments": [
                {
                    "description": [
                        "Representerar heltal upp till 15 siffror korrekt."
                    ]
                },
                {
                    "description": [
                        "9999999999999998+1"
                    ]
                },
                {
                    "description": [
                        "Avrundning fel för decimaltal kan förekomma. ",
                        [
                            {
                                "form": "important"
                            },
                            "0.2+0.1"
                        ]
                    ]
                }
            ],
            "comment": [
                "Obs! Dessa problem är inget unikt för js utan finns i alla språk när du använder dig av flyttal."
            ]
        },
        {
            "level": 1,
            "type": "application",
            "title": [
                "Vad använder vi då Number till?"
            ],
            "description": [
                "Efter som det inte finns någon anna tal typ av nder vi det till allt."
            ],
            "statments": [
                {
                    "description": [
                        "Beräkningar, även krävande."
                    ]
                },
                {
                    "description": [
                        "Men vi kan försöka att använda bara heltal för att undvika problem."
                    ]
                },
                {
                    "description": [
                        "Hålla ordning på saker, nummera olika ting."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "🀄️ Hur ser det ut i andra språk?"
            ],
            "description": [
                "I många nadra språk så som C, C00, C#, java med flera skiljer man på olika typer av tal."
            ],
            "statments": [
                {
                    "description": [
                        "Det finns ",
                        [
                            {
                                "form": "important"
                            },
                            "double"
                        ],
                        " eller ",
                        [
                            {
                                "form": "important"
                            },
                            "float"
                        ],
                        " för flytal."
                    ]
                },
                {
                    "description": [
                        "Och ",
                        [
                            {
                                "form": "important"
                            },
                            "int"
                        ],
                        " med flera för heltal."
                    ]
                },
                {
                    "description": [
                        "Antalet byte kan skilja mellan olika typer av tal."
                    ]
                },
                {
                    "description": [
                        "Att optimera minnes användingen kan vara en viktig del."
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "Vad är NaN?"
            ],
            "description": [
                "NaN är ett speciall siffra som används i js för att säga att detta är inget tal."
            ],
            "statments": [
                {
                    "description": [
                        "NaN är förkortning av \"Not a Number\""
                    ]
                },
                {
                    "description": [
                        "typeof NaN === \"number\""
                    ]
                },
                {
                    "description": [
                        "Number(\"abc\") === NaN"
                    ]
                },
                {
                    "description": []
                },
                {
                    "description": [
                        "NaN"
                    ]
                },
                {
                    "description": [
                        "NaN\\",
                        "NaN+3"
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "Vad är Infinity?"
            ],
            "description": [
                "Infinity är ett speciall siffra som används i js för att säga att detta är resultatet av en odefinerad beräkning. Infinit kan ha posetivt eller \nnegativt tecken."
            ],
            "statments": [
                {
                    "description": [
                        "typeof Infinity === \"numbers\""
                    ]
                },
                {
                    "description": [
                        "1/0"
                    ]
                },
                {
                    "description": []
                },
                {
                    "description": [
                        "5/(5-5)"
                    ]
                },
                {
                    "description": [
                        "Infinity+Infinity",
                        [
                            {
                                "form": "important"
                            },
                            " "
                        ],
                        "Infinity",
                        "Infinity"
                    ]
                },
                {
                    "description": [
                        "OBS! ",
                        [
                            {
                                "form": "important"
                            },
                            "Infinity-Infinity===NaN"
                        ]
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "🔄 Att konvertera till ett Number."
            ],
            "description": [
                "För att konvertera till ett Number använder vi funktionen Number()."
            ],
            "statments": [
                {
                    "description": [
                        "Number(5) Tips: Du kan nu använda de inbyggda funktionerna för Number."
                    ]
                },
                {
                    "description": [
                        "Number(\"5\") - ",
                        [
                            {
                                "form": "important"
                            },
                            "Number(\"3.14\")"
                        ],
                        " - ",
                        [
                            {
                                "form": "important"
                            },
                            "Number(\"555.555\")"
                        ]
                    ]
                },
                {
                    "description": [
                        "Number(\"-5\")"
                    ]
                },
                {
                    "description": [
                        "Dessa är NaN: ",
                        [
                            {
                                "form": "important"
                            },
                            "Number(\"5/5\")"
                        ],
                        " ",
                        [
                            {
                                "form": "important"
                            },
                            "Number(\"One\")"
                        ]
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "🔄 Konvertera mera"
            ],
            "description": [
                "Det finns några egendomliga som uppkommer pga. ovanliga Number konverteringar."
            ],
            "statments": [
                {
                    "description": [
                        "Number({}) === NaN"
                    ]
                },
                {
                    "description": [
                        "Number(",
                        [
                            ""
                        ],
                        ") === 0"
                    ]
                },
                {
                    "description": [
                        "Number(true) === 1"
                    ]
                },
                {
                    "description": [
                        "Number(false) === 0"
                    ]
                }
            ],
            "comment": [
                "Konverteringen av booleans är logisk eftersom det är de värden som true och false har i matematiken."
            ]
        },
        {
            "level": 1,
            "title": [
                "🔬 Hur vet vi om något är ett nummer?"
            ],
            "description": [
                "Det finns flera sätt att göra detta på."
            ],
            "statments": [
                {
                    "description": [
                        "isNaN är sant om parameter inte är ett tal. Används tillsammans med inte operatorn \"!\"."
                    ]
                },
                {
                    "description": [
                        "!isNaN(5) ",
                        [
                            {
                                "form": "important"
                            },
                            "isNaN(\"Hello\")"
                        ]
                    ]
                },
                {
                    "description": [
                        "isFinite är sant om parametern är ett tal och inte är \"Infinity\"."
                    ]
                },
                {
                    "description": [
                        "isFinite(5) ",
                        [
                            {
                                "form": "important"
                            },
                            "isFinite(Infinity)"
                        ]
                    ]
                },
                {
                    "description": [
                        "isInterger sant om parametern är ett heltal."
                    ]
                },
                {
                    "description": [
                        "isInteger(5) ",
                        [
                            {
                                "form": "important"
                            },
                            "isInteger(3.14)"
                        ]
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "👿 Förvånande avrundningar"
            ],
            "description": [
                "Avrundningar kan ställa till problem."
            ],
            "statments": [
                {
                    "description": [
                        "0.1+0.2"
                    ]
                }
            ],
            "comment": []
        },
        {
            "level": 1,
            "title": [
                "Vad använder vi för funktioner"
            ],
            "description": [
                "Vi får dem ifrån Math"
            ],
            "statments": [],
            "comment": []
        }
    ],
    "kind": "sections"
}