跬步郎的博客 跬步郎的博客

——科员级项目管理师的奋斗历程

FreeCodeCamp备查簿(8、#211-#230--JavaScript基础)

FreeCodeCamp备查簿(8:#211-#230)

(--JavaScript基础)

20180308

211、 Golf Code

高尔夫代码,这里需要注意的是,if是判断语句,不是赋值,所以代码中strokes应该是用“==”而不是“=”。

// 请只修改这条注释以下的代码
  if (strokes == 1 ){
    return "Hole-in-one!";
  }
  else if (strokes <= par-2){
    return "Eagle";
  }
  else if (strokes == par-1){
    return "Birdie";
  }
  else if (strokes == par){
    return "Par";
  }
  else if (strokes == par +1){
    return "Bogey";
  }
  else if (strokes == par +2){
    return "Double Bogey";
  }
  else  
  return "Go Home!";

212、 Selecting from many options with Switch Statements

switch语句

// 请把你的代码写在这条注释以下
  switch(val){
    case 1:
      answer = "alpha";
      break;
    case 2:
      answer = "beta";
      break;
    case 3:
      answer = "gamma";
      break;
    case 4:
      answer ="delta";   
  }

213、 Adding a default option in Switch statements

switch中的default

// 请把你的代码写在这条注释以下
  switch (val){
    case "a":
      answer = "apple";
      break;
    case "b":
      answer = "bird";
      break;
    case "c":
      answer = "cat";
      break;
    default:
      answer = "stuff";
  }

214、 Multiple Identical Options in Switch Statements

Switch语句中的多个相同的选项

// 请把你的代码写在这条注释以下
  switch (val){
    case 1:
    case 2:
    case 3:
      answer = "Low";
      break;
    case 4:
    case 5:
    case 6:
      answer = "Mid";
      break;
    case 7:
    case 8:
    case 9:
      answer = "High";
      break;
  }

215、 Replacing If Else Chains with Switch

switch和if的比较

switch (val) {
    case "bob":
        answer = "Marley";
        break;
    case 42:
      answer = "The Answer";
      break;
    case 1:
      answer = "There is no #1";
      break;
    case 99:
      answer = "Missed me by this much!";
      break;
    case 7:
      answer = "Ate Nine";
      break;
  }

216、 Returning Boolean Values from Functions

从函数返回布尔值

// 请修改这部分代码
    return a < b;

217、 Return Early Pattern for Functions

早期的模式函数返回

// 请把你的代码写在这条注释以下
   if (a < 0 || b < 0){
    return undefined;
  }

218、 Counting Cards

计数卡,注意,这一节属于一个小程序了,用switch语句和if语句来判别count的值并进行输出。

// 请把你的代码写在这条注释以下
    switch (card){
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
      count += 1;
      break;
    case 7:
    case 8:
    case 9:
      break;
    case 10:
    case "J":
    case "Q":
    case "K":
    case "A":
      count -= 1;
      break;
  }
  if (count > 0){
    return count + " Bet";
  }
  else{
    return count + " Hold";
  }  
  return "Change Me";
  // 请把你的代码写在这条注释以上

219、 Build JavaScript Objects

创建javascript对象,这里需要注意的是,对象里面属性的分割处是用“,”而不是“;”

// 请只修改这条注释以下的代码
var myDog = {
  "name":"xiaomai",
  "legs":4,
  "tails":1,
  "friends":["me","mycat"]  
};

220、 Accessing Objects Properties with the Dot Operator

访问对象属性的两种方式:“.”和“[]”

var hatValue = testObj.hat;      // 请修改这一行
var shirtValue = testObj.shirt;    // 请修改这一行

221、 Accessing Objects Properties with Bracket Notation

访问对象的另一种方式,中括号,如果对象里的属性有空格,那就用中括号

var entreeValue = testObj["an entree"];   // 请修改这一行
var drinkValue = testObj["the drink"];    // 请修改这一行

222、 Accessing Objects Properties with Variables

中括号操作的另一种方式

var playerNumber= 16;       // 修改这一行
var player = testObj[playerNumber];   // 修改这一行

223、 Using Objects for Lookups

转化为lookup对象,下面的答案虽然通过了,但是我觉得有点问题,因为我改了注释下面的代码。

var result = {
    "alpha": "Adams",
    "bravo": "Boston",
    "charlie": "Chicago",
    "delta": "Denver",
    "echo": "Easy",
    "foxtrot": "Frank"
    };
  // 请只修改这条注释以上的代码
    return result[val];
  }

224、 Testing Objects for Properties

测试对象的属性

// 请把你的代码写在这条注释以下
  if (myObj.hasOwnProperty(checkProp)){
    return myObj[checkProp];
                                     }  
  else {
    return "Not Found";
  } 
  }

225、 Introducing JavaScript Object Notation JSON

json的介绍,这一节就是照例子添加一个专辑就可以

```
var myMusic = [
  {
    "artist": "Billy Joel",
    "title": "Piano Man",
    "release_year": 1973,
    "formats": [ 
      "CS", 
      "8T", 
      "LP" ],
    "gold": true
  },
  // 请在这里添加专辑
  {
    "artist": "liudehua",
    "title": "shouge",
    "release_year": 1992,
    "formats": [ 
      "td", 
      "8s", 
      "lg" ],
    "gold": true
  }
];

```

226、 Accessing Nested Objects in JSON

访问JSON中嵌套对象,inside 嵌套在car里,car是myStorage对象,所以myStorage.car.inside[]就能得到数据了

```

var gloveBoxContents = myStorage.car.inside["glove box"]; // 请修改这一行 ```

227、 Accessing Nested Arrays in JSON

访问json嵌套的数组

var secondTree = myPlants[1].list[1]; // 请修改这一行

228、 Record Collection

收藏的唱片,这个有点难度,研究了几个小时搞定的

// 请只修改这条注释以下的代码
function update(id, prop, value) {
  if (collectionCopy[id].hasOwnProperty(prop) !== true){
    collectionCopy[id][prop] = [];
  }  
  if (value === ""){
    delete collectionCopy[id][prop];
  }
  else{
    if (prop === "tracks"){
    collectionCopy[id].tracks.push(value);
    }
    else{
      collectionCopy[id][prop] = value;
    }
  }
  return collection;
}
// 你可以修改这一行来测试你的代码

229、 Iterate with JavaScript For Loops

javascript的迭代循环,其实就是for循环,主要的是,问题跟举例有区别,举例中写的是显示0-4,问题要求是显示1-5

```

// 请把你的代码写在这条注释以下 for (var i =1; i < 6; i++) { myArray.push(i); } ```

230、 Iterate Odd Numbers With a For Loop

用for循环写奇数

// 请把你的代码写在这条注释以下
for (var i = 1; i <10; i += 2){
  myArray.push(i);
}

你的赞助,是对我辛勤耕耘的最大支持