Course “JS: Functions”

Course updated on April 29, 2025

Subscribe

Access this and all courses with a subscription

What's included

Theory: 14 lessons
Exercises: 9
Questions: 37
Self-study tasks
Extra materials
Extended materials for 14 lessons

Description

JavaScript functions go much beyond what you already know! You will learn about first-class objects, lambda functions, and higher-order functions in this course. Learn how to do the "mapping", "filtering", and "aggregation" operations, as well as how to pass and take an infinite number of arguments. Learn about external libraries that make programming much simpler.

You will learn

  • Use advanced function capabilities to write concise and efficient code
  • Separate pure functions from those with side effects
  • Use higher-order functions (map/filter/reduce) to handle collections
  • Recognize the imperative and declarative (functional) paradigms

Syllabus

1

About course

Learn about the course, its structure, objectives, and goals

2

Pure functions

Learn about the concepts of determinism and side effects

3

Command–query separation

Meet the CQS principle

4

Rest parameter syntax (packing arguments)

Learn how to use the rest syntax to form an array from function arguments

5

Spread syntax (unpacking arguments)

Learn how to use the spread syntax with a function call

6

Parameter destructuring

Learn how to apply the destructuring assignment for function parameters

7

First-class objects

Consider functions as data. Learn about arrow functions

8

Higher-order functions

Learn how to build abstractions using functions

9

Mapping

Learn how to use the map method

10

Filtering

Learn how to use the filter method

11

Reducing

Learn how to use the reduce method

12

Signals

Come to grips with the concept of standard interface

13

Programming paradigms

Become familiar with the "paradigm" concept and examine the differences between imperative and declarative paradigms

14

Building abstraction using functions

Summarize knowledge about functions and get to grips with the concept of abstraction

Challenges

1

Configuration parsing

2

NRZI encoding

3

Vertical histogram

4

Sea Battle 2

5

IP converter

6

Anagrams filter

7

Horizontal histogram

8

Coeval counter

9

Merging dictionaries

10

Same parity

11

Color model conversion

12

Bar chart

13

IPv6 validator

Recommended programs

Course Cover
  • Run code right in the browser
  • Lifetime access
  • Learn at your own pace
Subscribe

Access this and all courses with a subscription