Skip to content

Einarbeitung Node.Js & Javascript [Nick Crisci]

Nick edited this page Apr 23, 2023 · 4 revisions

Einarbeitung in Javascript und Node.JS

Javascript

Bereits vor dem Semester, eigentlich sogar bereits vor dem Studium, hatte ich mich bereits, bedingt durch persönliches Interesse, mit Javascript auseinandergesetzt. Daher fiel mir die Einarbeitung in die Sprache Javascript recht leicht. Um mein Wissen zu reaktivieren hatte ich mir auf der Seite Freecodecamp die Lektionen zu Javascript noch einmal angesehen und die verschiedenen Coding Aufgaben abgearbeitet. Des Weiteren hab ich zur Übung die Übungsblätter bearbeitet.

Node.js

Um mir die Grundlagen von Node.js anzueignen, nutze ich die Node Videos von The native web. Bisher bin ich dabei bis zu Video 6 gekommen und werde die Videos auch weiterhin nutzen, um meinen Fähigkeiten Node.js betreffend zu erweitern.

Kleines Codebeispiel des dritten Aufgabenblattes

const fs = require("fs")

const citiesJson = "cities.json"

const readJson = filename => {
    return new Promise(resolve => {
        try {
            fs.readFile(filename, (err, data) => {
                resolve(data)
            })
        } catch (error) {
            console.log("Fehler: " + error)
        }
    })
}

const getJsonData = async () => {
    const data = await readJson(citiesJson)
    return (JSON.parse(data))
}

const findCityByName = async name => {
    const cities = await getJsonData()
    let indexOfCity
    cities.forEach((value, index) => {
        if (value.city == name) {
            indexOfCity = index
        }
    })
    return indexOfCity
}

const deleteCityAtIndex = async index => {
    const cities = await getJsonData()
    cities.splice(index, 1)
    fs.writeFile(citiesJson, JSON.stringify(cities), () => {
        return
    })
}

const deleteCityByName = name => {
    findCityByName(name).then(index => {
        deleteCityAtIndex(index)
    })
}

const addCityData = async (name, citizens, state) => {
    cities = await getJsonData()
    const newCity = { "city": name, "citizens": citizens, "state": state }
    cities.forEach((value, index) => {

        if (value.city == name) {
            return cities
        }

        if (index == cities.length - 1) {
            cities.push(newCity)
        } else if (value.citizens < citizens) {

            if (value.city != name) {
                cities.splice(index, 0, newCity)
            }
        }
    })
    return cities
}

const addCity = (name, citizens, state) => {
    addCityData(name, citizens, state).then(cities => {
        fs.writeFile(citiesJson, JSON.stringify(cities), () => { return })
    })
}

const logCities = () => {
    getJsonData().then(cities => {
        cities.forEach(city => {
            console.log(city.city)
        })
    })
}

module.exports = {
    deleteCityByName,
    addCity,
    logCities
}

Clone this wiki locally