1.另一种数据类型是布尔(Boolean)。布尔 值要么是true要么是false,

它非常像电路开关, true 是“开”,false是“关”。这两种状态是互斥的

2.伪代码

if(条件为真){

语句被执行

}

在函数内部创建一个 if 语句,如果该参数 wasThatTrue值为 true,返回 "That was true",否则,并返回 "That was false",

// 定义 myFunction
function myFunction(wasThatTrue) {

// 请把你的代码写在这条注释以下

if(wasThatTrue){
return "That was true";
}

// 请把你的代码写在这条注释以上
return "That was false";
}

// 你可以修改这一行来测试你的代码
myFunction(true);

3.最基本的运算符是相等运算符:==

相等运算符比较两个值,如果它们是同等,返回 true,如果它们不等,返回 false

值得注意的是相等运算符不同于赋值运算符(=

任务

相等运算符 添加到指定的行,这样当 val 的值为12的时候,函数会返回"Equal"

// 定义 myTest
function myTest(val) {
if (val==12) { // 请修改这一行
return "Equal";
}
return "Not Equal";
}

// 你可以修改这一行来测试你的代码
myTest();

4.严格相等运算符(===)是相对于相等操作符(==)的一种操作符。

与相等操作符不同的是,它会同时比较元素的值和 数据类型

// 定义 myTest
function myTest(val) {
if (val===7) { // 请修改这一行
return "Equal";
}
return "Not Equal";
}

// 你可以修改这一行来测试你的代码
myTest(10);//myTest(10) 应该返回 "Not Equal"

              myTest(7) 应该返回 "Equal"

                      myTest("7") 应该返回 "Not Equal".
 
 
 
5.不相等运算符(!=)与相等运算符是相反的

function myTest(val) {
if (val!=99) { // 请修改这一行
return "Not Equal";
}
return "Equal";
}

// 你可以修改这一行来测试你的代码
myTest("99");  //myTest(99) 应该返回 "Equal"

                        myTest("99") 应该返回 "Equal"
                      myTest(12) 应该返回 "Not Equal"
                       myTest("12") 应该返回 "Not Equal"
                      myTest("bob") 应该返回 "Not Equal"
 
 
 
 
 
 
6.严格不相等运算符(!==)与全等运算符是相反的
 
 
7.使用大于运算符(>)来比较两个数字。
如果大于运算符左边的数字大于右边的数字,将会返回 true。否则,它返回 false,
 

function myTest(val) {
if (val>100) { // 请修改这一行
return "Over 100";
}

if (val>10) { // 请修改这一行
return "Over 10";
}

return "10 or Under";
}

myTest(1);       // 你可以修改这一行来测试你的代码
//myTest(0) 应该返回 "10 or Under"

myTest(10) 应该返回 "10 or Under"
myTest(11) 应该返回 "Over 10"
myTest(99) 应该返回 "Over 10"
myTest(100) 应该返回 "Over 10"
myTest(101) 应该返回 "Over 100"
myTest(150) 应该返回 "Over 100"
 
 
8.使用大于等于 运算符(>=)来比较两个数字的大小
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

function myTest(val) {
// 请只修改这条注释以下的代码

if (val<=50&&val>=25) {

return "Yes";

}

// 请只修改这条注释以上的代码
return "No";
}

// 你可以修改这一行来测试你的代码
myTest(10);

12.只要求多个条件满足一个,用II逻辑运算符,(按键在shift+\)

function myTest(val) {
// 请只修改这条注释以下的代码

if (val<10||val>20) {
return "Outside";

}

// 请只修改这条注释以上的代码
return "Inside";
}

// 你可以修改这一行来测试你的代码
myTest(15);

13写一个else语句,当条件为假时执行相应的代码

function myTest(val) {
var result = "";
// 请只修改这条注释以下的代码

if (val > 5) {
result = "Bigger than 5";
}

else{
result = "5 or Smaller";
}

// 请只修改这条注释以上的代码
return result;
}

// 你可以修改这一行来测试你的代码
myTest(4);

14.如果你有多个条件语句,你可以通过else if语句把 if语句链起来(if   else if      else)

function myTest(val) {
if (val > 10) {
return "Greater than 10";
}

else if (val < 5) {
return "Smaller than 5";
}
else{
return "Between 5 and 10";}
}

// 你可以修改这一行来测试你的代码
myTest(7);

15.ifelse if语句中代码的执行顺序是很重要的。

在条件判断语句中,代码的执行顺序是从上到下,所以你需要考虑清楚先执行哪一句,后执行哪一句

16.if/else 语句串联在一起可以实现复杂的逻辑

function myTest(num) {
// 请只修改这条注释以下的代码
if(num<5){
return "Tiny";
}
else if(num<10){
return "Small";
}
else if(num<15){
return "Medium";
}
else if(num<20){
return "Large";
}
else if(num>=20){
return "Huge";
}
else{
return "修改这里";}
// 请只修改这条注释以上的代码
}

// 你可以修改这一行来测试你的代码
myTest(7);

17.

在高尔夫golf游戏中,每个洞都有自己的标准杆数par,代表着距离。根据你把球打进洞所挥杆的次数strokes,可以计算出你的高尔夫水平。

函数将会传送2个参数,分别是标准杆数par 和 挥杆次数strokes ,根据下面的表格返回正确的水平段位。

Strokes Return
1 "Hole-in-one!"
<= par - 2 "Eagle"
par - 1 "Birdie"
par "Par"
par + 1 "Bogey"
par + 2 "Double Bogey"
>= par + 3 "Go Home!"

parstrokes 必须是数字而且是正数

function golfScore(par, strokes) {
// 请只修改这条注释以下的代码
if(strokes==1) {
return"Hole-in-one!";
}

}

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 if(strokes>= par + 3){return"Go Home!";

}
else{
return "修改这里";}
// 请只修改这条注释以上的代码
}

// 你可以修改这一行来测试你的代码
golfScore(5, 4);

18.如果你有非常多的选项需要选择,可以使用switch语句。

根据不同的参数值会匹配上不同的case分支,

语句会从第一个匹配的case分支开始执行,直到碰到break就结束

任务

写一个测试 val的switch语句,并且根据下面的条件来设置不同的answer
1 - "alpha"
2 - "beta"
3 - "gamma"
4 - "delta"

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

// 请把你的代码写在这条注释以上
return answer;
}

// 你可以修改这一行来测试你的代码
myTest(1);

19.在switch 语句中你可能无法用case来指定所有情况,

这时你可以添加default语句,当再也找不到case匹配的时候default语句会执行,

非常类似于if/else组合中的else语句

任务

写一个根据下面的条件来设置answer的switch语句:
"a" - "apple"
"b" - "bird"
"c" - "cat"
default - "stuff"

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

}
// 请把你的代码写在这条注释以上
return answer;
}

// 你可以修改这一行来测试你的代码
myTest(1);

20.如果switch语句中的case分支的break 语句漏掉了,

后面的case语句会一直执行直到遇到break,

如果你有多个输入值和输出值一样,可以试试下面的switch语句

任务

写一个根据下面的范围来设置answer 的switch语句:
1-3 - "Low"
4-6 - "Mid"
7-9 - "High"

function myTest(val) {
var answer = "";
// 请把你的代码写在这条注释以下
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;
}
// 请把你的代码写在这条注释以上
return answer;
}

// 你可以修改这一行来测试你的代码
myTest(1);

21.任务

把串联的 if/if else 语句改成 switch 语句

function myTest(val) {
var answer = "";
// 请只修改这条注释以下的代码

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

// 请只修改这条注释以上的代码
return answer;
}

// 你可以修改这一行来测试你的代码
myTest(7);

/////////////////////////////////////////

function myTest(val) {
var answer = "";
// 请只修改这条注释以下的代码

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;
}

// 请只修改这条注释以上的代码
return answer;
}

// 你可以修改这一行来测试你的代码
myTest(7);

22.所有的比较操作符返回的都是一个boolean值,要么是 true要么是false,

如果不特意设置输出值,可以简略步骤

///////////////////////////////////////////////////////

任务

移除isLess函数的if/else语句但不影响函数的功能

function isLess(a, b) {
// 请修改这部分代码
if (a < b) {
return true;
} else {
return false;
}
}

// 你可以修改这一行来测试你的代码
isLess(10, 15);

///////////////////////////////////////////

function isLess(a, b) {
// 请修改这部分代码

return a < b;
}

// 你可以修改这一行来测试你的代码
isLess(10, 15);

24.当代码执行到return语句时,函数返回一个结果就结束运行了,return后面的语句根本不会执行

任务

修改函数abTestab小于0时,函数立即返回一个undefined并退出。

提示
记住undefined,是一个关键字,而不是一个字符串

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

// 请把你的代码写在这条注释以上

return Math.round(Math.pow(Math.sqrt(a) + Math.sqrt(b), 2));
}

// 你可以修改这一行来测试你的代码
abTest(2,2);

25.

FCC 基础JavaScript 练习4的更多相关文章

  1. FCC 基础JavaScript 练习7

    1. Math.random()用来生成一个在0(包括0)到1(不包括1)之间的随机小数,因此Math.random()可能返回0但绝不会返回1. 提示随后的函数都会在return执行前调用,所以我们 ...

  2. FCC 基础JavaScript 练习6

    1.对象和数组很相似,数组是通过索引来访问和修改数据,对象是通过属性来访问和修改数据的, 对象适合用来存储结构化数据,就和真实世界的对象一模一样,比如一只猫. 任务 创建一个叫做myDog的对象,它里 ...

  3. FCC 基础JavaScript 练习2

    1. 引号不是字符串中唯一的可以被转义字符.下面是常见的转义序列列表: \'  单引号 \" 双引号 \\ 反斜杠符 \n 换行符 \r 回车符 \t 制表符 \b 退格符 \f  换页符 ...

  4. FCC 基础JavaScript 练习1

    1.JavaScript中的注释方式有以下两种 // This is an in-line comment. /* This is a multi-line comment */ 2.avaScrip ...

  5. FCC 基础JavaScript 练习5

    在赌场21点游戏中,玩家可以通过计算牌桌上已经发放的卡牌的高低值来让自己在游戏中保持优势,这就叫21点算法. 根据下面的表格,每张卡牌都分配了一个值.如果卡牌的值大于0,那么玩家应该追加赌注.反之,追 ...

  6. FCC 基础JavaScript 练习3

    1.通过使用提供的变量参数:名词myNoun.形容词myAdjective.动词myVerb.副词myAdverb,来创建一个新的句子 result, function wordBlanks(myNo ...

  7. 回归基础: JavaScript 变量提升

    from me: javascript的变量声明具有hoisting机制,它是JavaScript一个基础的知识点,也是一个比较容易犯错的点,平时在开发中,大大小小的项目都会遇到. 它是JavaScr ...

  8. js基础--javaScript数据类型你都弄明白了吗?绝对干货

    欢迎访问我的个人博客:http://www.xiaolongwu.cn 数据类型的分类 JavaScript的数据类型分为两大类,基本数据类型和复杂数据类型. 基本数据类型:Null.Undefine ...

  9. 基础JavaScript练习(三)总结

    任务目的 实践JavaScript数组.字符串相关操作 任务描述 基于任务四进行升级 将新元素输入框从input改为textarea 允许一次批量输入多个内容,格式可以为数字.中文.英文等,可以通过用 ...

随机推荐

  1. 携程Apollo(阿波罗)配置中心在Spring Boot项目快速集成

    前提:先搭建好本地的单机运行项目:http://www.cnblogs.com/EasonJim/p/7643630.html 说明:下面的示例是基于Spring Boot搭建的,对于Spring项目 ...

  2. Oracle 设置用户密码永不过期

    --1.查看用户的proifle,一般是default select username,profile from dba_users; --2.查看概要文件(default)的密码有效期设置 sele ...

  3. vue watch 深度监控

    比如监控 data中的list

  4. 多路转接模型之poll

    poll系统调用和select类似.也是在指定时间内轮询一定数量的文件描写叙述符,以測试当中是否有就绪者.poll和select效率差点儿相同,仅仅是其使用接口相对简单些,poll不在局限于1024个 ...

  5. CodeForces484A Bits(贪心)

    CodeForces484A Bits(贪心) CodeForces484A 题目大意:给出范围[A.B].期望你给出某个数X满足X属于[A,B],而且X转成二进制的1的个数最多.假设有多个给出最小的 ...

  6. Python3 读取和写入excel

    https://blog.csdn.net/weixin_43094965/article/details/82226263一.Excel 1.Excel文件三个对象 workbook: 工作簿,一个 ...

  7. 从零開始学android&lt;Bitmap图形组件.四十七.&gt;

    android.graphics.Bitmap(位图)是Android手机中专门提供的用于操作图片资源的操作类,使用此类能够直接从资源文件之中进行图片资源的读取.而且对这些图片进行一些简单的改动. 经 ...

  8. field load respone data

    问题: AJAX 使用谷歌浏览器 POST 请求报如下错误 field load respone data 使用 火狐 浏览器就正常 调试1: 发现其实我请求的回调函数能打印出来数据,但是,在netw ...

  9. ionic开发android App

    在win下配置ionic可以参考七月的这篇博客:http://www.cnblogs.com/shikelong/p/4480975.html. 依照七月的思路基本可以创建一个ionic项目了,下面我 ...

  10. 2016/1/25 多线程 作业 方法一 继承Thread 方法二 实现Runnable 多线程笔记

    /* * 1,尝试定义一个继承Thread类的类,并覆盖run()方法, * 在run()方法中每隔100毫秒打印一句话.*/ package Stream; //方法一 继承Thread 实现多线程 ...