Git Product home page Git Product logo

azubi-javascript's Introduction

Azubi-javascript

this is the missing repo to teach the core concepts about javascript

usage

The idea is to have failing tests and the azubis have to fix them.

npm install # once
npm run all # to run the whole test suite
npm run single -- <folder> # to run one specific suite
  1. Datatypes

  • what datatypes do exist in the programming language JavaScript? List them!
  • what does coersion mean? Give me an example!

Now solve the test suite by fixing all the tests:

npm run single -- datatypes

  1. Control structures

  • what control structures do you know?
  • given a loop that prints number from 1 to 5. Implement this with a for loop and a while loop.
  • What is a fall-through in context of a switch statement?

Now solve the test suite by fixing all the tests:

npm run single -- controlstructures

  1. Arrays

  • what operations would you do with a list of elements? List them!
  • why do you think is this true typeof [] == "object"? What makes an object an object in classical programming?

Now solve the test suite by fixing all the tests:

npm run single -- arrays

  1. Objects

  • Objects are container elements are also known as map, hashmap or key-value pair. Not much to it :-)

Now solve the test suite by fixing all the tests:

npm run single -- objects

  1. Functions

  • write a function in three different programming languages that returns the sum of two numbers, which have been given to the function as an argument.
  • what is similar in all three implementations? what is different?
  • explain variable shadowing. Give me an example!

Now solve the test suite by fixing all the tests:

npm run single -- functions

  1. Scope

  • What is the difference between declaration and definition? How does this relate to the concept of 'hoisting'. Explain!
  • Watch https://www.youtube.com/watch?v=ZoFlcv2ByBo .
  • What is hoisting again? What scopes does javascript use? List them!

Now solve the test suite by fixing all the tests:

npm run single -- scope

  1. Prototypes

There are many definitions of 'prototype': 1) an original model on which something is patterned, 2) a standard or typical example, 3) a first full-scale and usually functional form of a new type or design of a construction. For JavaScript the first one applies!

  • What types of languages do you know. Try to find 3 groups.
  • What are the main concepts of an object-oriented programming language?
  • every property of an js-object has to be stored in memory. Open your favorite browser and try to analyse the memory footprint of a website.

Now solve the test suite by fixing all the tests:

npm run single -- prototypes

azubi-javascript's People

Contributors

co0p avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.