FCC 基础JavaScript 练习3

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

 

posted @ 2017-12-01 20:52  萹豆  阅读(1405)  评论(0编辑  收藏  举报