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

function wordBlanks(myNoun, myAdjective, myVerb, myAdverb) {
var result = "";
// 请把你的代码写在这条注释以下
myNoun="dog ";
myAdjective="big ";
myVerb="ran ";
myAdverb="quickly ";
result=myNoun+myAdjective+"cat "+myVerb+myAdverb+"little "+"hit "+"slowly";

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

wordBlanks("dog", "big", "ran", "quickly"); // 你可以修改这一行来测试你的代码.

2.可以多个数据储存在一个地方,以左方括号[开始定义一个数组,以右方括号]结束定义,并把每个条目之间用逗号隔开,

var myArray = ["hello",23];

3.也可以在数组中包含其他数组

var myArray = [["hello",12],["hello","world"]];

4.数组索引的使用与字符串索引一样,不同的是,通过字符串的索引得到的是一个字符,通过数组索引得到的是一个条目,

创建一个名为 myData 的变量,并把 myArray 的第一个索引上的值赋给它

var myArray = ["hello","world",6];

// 请把你的代码写在这条注释以下
var myData=myArray[0];

5.与字符串的数据不可变不同,数组的数据是可变的,并且可以自由地改变!!!

修改数组 myArray 中索引0上的值为 3,

// 初始化变量
var myArray = [1,2,3];

// 请把你的代码写在这条注释以下
myArray[0]=3;

6.可以把 多维 数组看作成是一个 数组中的数组

使用恰当的 [index] 访问 myArray,使得 myData 的值为8,

// 初始化变量
var myArray = [[1,2,3], [4,5,6], [7,8,9], [[10,11,12], 13, 14]];

// 请只修改这条注释以下的代码
var myData = myArray[2][1];

7..unshift(xxxx) 函数用起来就像 .push() 函数一样, 但是在数组的头部推入元素

使用 unshift() 函数把["Paul",35] 加入到 myArray 的头部,

// 初始化变量
var myArray = [["John", 23], ["dog", 3]];
myArray.shift();

// 请把你的代码写在这条注释以下
myArray.unshift(["Paul",35]);

将数据追加一个数组的末尾是通过push(xxxxx) 函数,

.push(xxxxx) 接受把一个或多个参数,并把它“推”入到数组的末尾,

// 举例
var ourArray = ["Stimpson", "J", "cat"];
ourArray.push(["happy", "joy"]); 
// 经过 push 操作后,ourArray 的值为 ["Stimpson", "J", "cat", ["happy", "joy"]]

8.要移出一个数组开首的值 用.shift() 它的工作原理就像 .pop(),

// 举例
var ourArray = ["Stimpson", "J", ["cat"]];
removedFromOurArray = ourArray.shift();
// 经过 shift 操作后,removedFromOurArray 的值为 "Stimpson",ourArray 的值为 ["J", ["cat"]].

移出性函数()内不用放东西,加入性函数()内要加东西.

9.pop() 函数用来“抛出”一个数组末尾的值。我们可以把这个“抛出”的值赋给一个变量存储起来,

// 举例
var ourArray = [1,2,3];
var removedFromOurArray = ourArray.pop();
// 经过 pop 操作之后,removedFromOurArray 的值为 3, ourArray 的值为 [1,2].

10.创建一个名叫 myList的购物清单,清单的数据格式就是多维数组,

每个子数组中的第一个元素应该是购买的物品名称,第二个元素应该是物品的数量,类似于:

["Chocolate Bar", 15]

任务:你的购物清单至少应该有5个子数组,

var myList = [["Chocolate Bar", 15],["Chocolate Bar", 15],["Chocolate Bar", 15],["Chocolate Bar", 15],["Chocolate Bar", 15]];

11可以通过函数名称加上后面的小括号来调用这个函数,

所有的大括号之间的代码将在每次函数调用时执行,

  1. 创建一个名为 myFunction 的函数,这个函数可以打印“Hi World”到开发控制台上。
  2. 调用这个函数

function myFunction(){
console.log("Hi World");
}
myFunction();

12.调用一个函数时所传入的参数为实参,实参决定着形参真正的值。简单理解:形参即形式、实参即内容

// 举例
function ourFunction(a, b) {
console.log(a - b);//括号内的是形参
}
ourFunction(10, 5); // 输出 5//括号内的是实参

13.用var定义的变量具有全局作用域,不用var定义的变量应该设置作用域,不设置作用域会被当成全局变量,造成数据混乱.

var myGlobal=10;   //具有全局作用域

function fun1() {    //作用域在函数内
oopsGlobal=5;
}

14.在一个函数内声明的变量,以及该函数的参数都是局部变量,意味着它们只在该函数内可见,

function myFunction() {
'use strict';
var myVar;

console.log(myVar);//在函数内有效
}
myFunction();//调用函数可得出

console.log(myVar);//在函数外无效,无法得出.

15.一个程序中有可能具有相同名称的 局部 变量 和 全局 变量。在这种情况下,局部 变量将会优先于 全局 变量,

// 初始化变量
var outerWear = "T-Shirt";

function myFunction() {
// 请把你的代码写在这条注释以下

var outerWear="sweater";

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

myFunction();   //输出的是sweater

16.数据通过函数的 参数 来传入函数,也可以使用 return 语句把数据从一个函数中传出来,

创建一个函数 timesFive 接受一个参数, 把它乘于 5 之后并返回(returns),

function timesFive (num) {
return num *5;
}

17.调用 process 函数并给参数一个值 7,然后把返回的值赋值给变量 processed

// 初始化变量
var processed = 0;

function process(num) {
return (num + 3) / 5;
}

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

processed=process(7);

18.写一个函数 queue ,用一个数组arr和一个数字item作为参数,

数字item添加到数组的结尾,然后移出数组的第一个元素,最后队列函数应该返回被删除的元素

function queue(arr, item) {
// 请把你的代码写在这里
arr.push(item);
var del = arr.shift();
return del; // 请修改这一行
}

// 初始化测试数据
var testArr = [1,2,3,4,5];

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

  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 练习4

    1.另一种数据类型是布尔(Boolean).布尔 值要么是true要么是false, 它非常像电路开关, true 是“开”,false是“关”.这两种状态是互斥的 2.伪代码 if(条件为真){ 语 ...

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

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

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

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

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

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

随机推荐

  1. Spring集成Redis方案(spring-data-redis)(基于Jedis的单机模式)(待实践)

    说明:请注意Spring Data Redis的版本以及Spring的版本!最新版本的Spring Data Redis已经去除Jedis的依赖包,需要自行引入,这个是个坑点.并且会与一些低版本的Sp ...

  2. WebLogic(12C)——简单公布和JDBC

    一,简单公布应用 1.点击"安装".開始部署应用: 2,找到要部署的项目路径: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaGFue ...

  3. seajs入门使用

    使用 Sea.js 进行模块化开发还能够带来非常多优点: 模块的版本号管理. 通过别名等配置,配合构建工具,能够比較轻松地实现模块的版本号管理. 提高可维护性.模块化能够让每一个文件的职责单一,很有利 ...

  4. activiti自己定义流程之Spring整合activiti-modeler5.16实例(四):部署流程定义

    注:(1)环境搭建:activiti自己定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建         (2)创建流程模型:activiti自己定义流程之Spr ...

  5. Servlet学习笔记(八)—— 文件下载

    一.文件下载概述 比如图片或者HTML这类静态资源,仅仅要在浏览器中打开正确的网址就行下载.仅仅要资源放在应用程序文件夹或者其下的子文件夹中,但不在WEB-INF下.Servlet/JSP容器就会将资 ...

  6. Delphi异常处理的基本原则和方法

    Delphi异常处理的基本原则和方法 一.异常的来源. 在Delphi的应用程序中,下列的情况都比较有可能产生异常.(1)文件处理(2)内存分配(3)Windows资源(4)运行时创建对象和窗体(5) ...

  7. 【USACO 2008FEB】 旅馆

    [题目链接] 点击打开链接 [算法] 线段树 对于一个节点,记录它从左端点延伸的最多的空房间的个数,从右端点延伸的最多的空房间个数,和该区间最多的连续 空房间个数 [代码] #include<b ...

  8. luogu3942将军令

    https://www.zybuluo.com/ysner/note/1302132 题面 在大小为\(n\)的树上选择尽量少的点,使得所有未选择的点距离选择了的点小于等于\(k\). \(n\leq ...

  9. 删除Oracle文件、注册表

    用Oracle自带的卸载程序不能从根本上卸载Oracle,从而为下次的安装留下隐患,那么怎么才能完全卸载Oracle呢?那就是直接注册表清除,步骤如下: 1. 开始->设置->控制面板-& ...

  10. IntelliJ IDEA 缓存和索引介绍

    转自:https://www.cnblogs.com/zhanghaibinblogs/p/6722061.html IDEA 在首次加载项目的时候都会创建索引,IDEA 的缓存和索引主要是用来加快文 ...