freeCodeCamp: [Beta] ES6 Section: some missing tests and titles, text needs formatting

Challenge Name

This is a generic issue to help track a few QA tasks for the ES6 section.

Issue Description

The challenges in the ES6 section are all listed below. Each one can benefit from some formatting tweaks in the challenge copy. Also, the challenge titles should follow the [Verb] [Object Clause] format that’s used elsewhere (e.g. “Use Conditional Logic with If Statements” or “Comment Your JavaScript Code”) and two challenges are missing titles. There are a number of challenges with placeholder tests that need to be written.

  • Explore Problems with the var Keyword
    • Formatting fixes
    • Add test to make sure let keyword is used instead of var
  • Compare Scopes of the var and let Keywords
    • Formatting fixes
    • Temporarily disabled ES6 syntax test
  • Declare a Read-Only Variable with the const Keyword
    • Formatting fixes
    • Write missing tests
  • Mutate an Array Declared with const
    • Formatting fixes
    • Write missing tests
  • Use Arrow Functions to Write Concise Anonymous Functions
    • Formatting fixes
    • Write missing tests
  • Write Arrow Functions with Parameters
    • Formatting fixes
    • Write missing tests
  • Write Higher Order Arrow Functions
    • Formatting fixes
    • Write missing tests
  • Set Default Parameters for Your Functions
    • Formatting fixes
    • Write one missing test
  • Use the Rest Operator with Function Parameters
    • Add title (suggested title: Use the Rest Operator with Function Parameters)
    • Formatting fixes
  • Use the Spread Operator to Evaluate Arrays In-Place
    • Formatting fixes
    • Write missing tests
  • Use Destructuring Assignment to Assign Variables from Objects
    • Add title
    • Formatting fixes
    • Write missing tests
  • Use Destructuring Assignment to Assign Variables from Nested Objects
    • Formatting fixes
    • Write missing tests
  • Use Destructuring Assignment to Assign Variables from Arrays
    • Formatting fixes
    • Write missing tests
  • Use Destructuring Assignment with the Rest Operator to Reassign Array Elements
    • Formatting fixes
    • Write missing tests
  • Use Destructuring Assignment to Pass an Object as a Function’s Parameters
    • Formatting fixes
    • Write missing tests
  • Interpolate a String Using Backquotes
    • Formatting fixes
    • Write missing tests
  • Write Concise Object Literal Declarations Using Simple Fields
    • Formatting fixes
    • Write missing tests
  • Write Concise Declarative Functions with ES6
    • Formatting fixes
    • Write missing tests
  • Use class Syntax to Define a Constructor Function
    • Formatting fixes
    • Write missing tests
  • Use getters and setters to Control Access to an Object
    • Formatting fixes
    • Write missing tests
  • Understand the Differences Between import and require
    • Formatting fixes
  • Use export to Reuse a Code Block
    • Formatting fixes
  • Use * to Import Everything from a File
    • Formatting fixes
  • Create an Export Fallback with export default
    • Formatting fixes
  • Importing a Default Export
    • Formatting fixes

Formatting suggestions for the challenge copy:

  • any JS keyword, operator, or method name, etc. should go in code tags. This puts the term in pink-colored text (or green, in night mode). The first instance of a term that is being defined can go in <dfn> tags
  • multi-line code examples should go in blockquote tags, where lines are separated with the br tag. See this example in the code base.
  • Replace the “Instructions” line with a single <hr> tag (the <hr> should be on its own line in the seed file)
  • Notes use <strong>Note</strong><br>Rest of note text... format

One person does not have to do all of these changes. Comment below which challenge(s) you’d like to work on (UPDATE: given some issues writing tests using regex for these challenges noted below it’s okay if you just want to work on fixing formatting). Then after the PR is accepted, you can check off what’s done. Thank you!

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 26 (25 by maintainers)

Most upvoted comments

I am working on reformatting, re-titling (where needed), and fixing grammatical errors in the first four challenges for this section (“Problems with the var keyword” through “An Immutable Object a const does not make”). For now, I will focus on reformatting the instructions to conform with the style of the previous section, Basic Javascript. If there is a fix for the regex test issue, I may be able to help fill in some of the missing tests.

@HKuz I’ve noticed that attributes (ex. text-transform) in the titles of the beta challenges have an odd formatting. Currently, they are like this: ex. Use the Text-transform Property...

I think this should be: Use the text-transform Property...

where the attribute is lowercase in the title. If you agree, I’ll add it to your list above and fix all with a PR. Happy to hear others’ opinions on this.

I’ve noticed a small typo in the Use class Syntax to Define a Constructor Function challenge. The constructor spaceShuttle should be capitalized in both blockquotes of the description:

var zeus = new spaceShuttle('Jupiter');

Should be:

var zeus = new SpaceShuttle('Jupiter');

Running Chromium 55.0.2883.87 (64 bit) on Ubuntu 16.04, 64 bit-OS

I’ll fix it if this change is approved.

@HKuz If it’s cool with you, I would like to work reformatting the next 4 challenges: Default Parameters, No Title One, Spread Operator, No Title Two 🙂

@BrendanSweeny - nice job on your PR, I saw it was just merged! I updated the structure of the comment at the top to break down what’s been done more accurately.

@dhcodes - yes, we should make sure titles are all consistent, with your suggestion that the property names are lowercase. That’d be a huge help if you fix the oddball ones 👍 The titles in this issue almost all need to be re-worked into the [Verb] [Object Clause] format (top four are good, and there’s an open PR for the arrow function ones). Everything else is fair game!