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可以通过函数名称加上后面的小括号来调用这个函数,
所有的大括号之间的代码将在每次函数调用时执行,
- 创建一个名为
myFunction
的函数,这个函数可以打印“Hi World”到开发控制台上。 - 调用这个函数
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的更多相关文章
- FCC 基础JavaScript 练习7
1. Math.random()用来生成一个在0(包括0)到1(不包括1)之间的随机小数,因此Math.random()可能返回0但绝不会返回1. 提示随后的函数都会在return执行前调用,所以我们 ...
- FCC 基础JavaScript 练习6
1.对象和数组很相似,数组是通过索引来访问和修改数据,对象是通过属性来访问和修改数据的, 对象适合用来存储结构化数据,就和真实世界的对象一模一样,比如一只猫. 任务 创建一个叫做myDog的对象,它里 ...
- FCC 基础JavaScript 练习2
1. 引号不是字符串中唯一的可以被转义字符.下面是常见的转义序列列表: \' 单引号 \" 双引号 \\ 反斜杠符 \n 换行符 \r 回车符 \t 制表符 \b 退格符 \f 换页符 ...
- FCC 基础JavaScript 练习1
1.JavaScript中的注释方式有以下两种 // This is an in-line comment. /* This is a multi-line comment */ 2.avaScrip ...
- FCC 基础JavaScript 练习5
在赌场21点游戏中,玩家可以通过计算牌桌上已经发放的卡牌的高低值来让自己在游戏中保持优势,这就叫21点算法. 根据下面的表格,每张卡牌都分配了一个值.如果卡牌的值大于0,那么玩家应该追加赌注.反之,追 ...
- FCC 基础JavaScript 练习4
1.另一种数据类型是布尔(Boolean).布尔 值要么是true要么是false, 它非常像电路开关, true 是“开”,false是“关”.这两种状态是互斥的 2.伪代码 if(条件为真){ 语 ...
- 回归基础: JavaScript 变量提升
from me: javascript的变量声明具有hoisting机制,它是JavaScript一个基础的知识点,也是一个比较容易犯错的点,平时在开发中,大大小小的项目都会遇到. 它是JavaScr ...
- js基础--javaScript数据类型你都弄明白了吗?绝对干货
欢迎访问我的个人博客:http://www.xiaolongwu.cn 数据类型的分类 JavaScript的数据类型分为两大类,基本数据类型和复杂数据类型. 基本数据类型:Null.Undefine ...
- 基础JavaScript练习(三)总结
任务目的 实践JavaScript数组.字符串相关操作 任务描述 基于任务四进行升级 将新元素输入框从input改为textarea 允许一次批量输入多个内容,格式可以为数字.中文.英文等,可以通过用 ...
随机推荐
- u启动为苹果笔记本重装win7系统教程
准备更换系统的苹果笔记本一台! 上述需要准备的东西均准备好以后我们就开始今天的教程了!! 首先,将已经制作好启动盘的u启动u盘插入到苹果笔记本上的usb插口,然后开机! 由于苹果笔记本电脑 ...
- 纤程(FIBER)
Indy 10 还包含对纤程的支持.纤程是什么?简单来说,它也是 一个“线程”,但是它是由代码控制的,而不是由操作系统控制的.实际上,可以认为线程 是一个高级纤程.纤程和 Unix 用户线程(Unix ...
- CentOS 7最小安装后,手动连接网络
时间:2015-12-12 00:53来源:blog.51cto.com 作者:XD 举报 点击:3679次 CentOS中最小安装,由于默认的网卡没有激活,所以无法连接到网络. 设置如下: sucd ...
- UVa 10534 Wavio Sequence (最长递增子序列 DP 二分)
Wavio Sequence Wavio is a sequence of integers. It has some interesting properties. · Wavio is of ...
- hdu 2544 最短路(SPFA算法)
本题链接:点击打开链接 本题大意: 首先输入一个n,m.代表有n个点.m条边.然后输入m条边,每条边输入两个点及边权.1为起点,n为终点.输入两个零表示结束. 解题思路: 本题能够使用SPFA算法来做 ...
- OCP-1Z0-051-题目解析-第21题
21. Examine the description of the EMP_DETAILS table given below: name NULL ...
- iOS DeepLinkKit使用简单介绍
Update: 2017.04.08 添加了使用iOS DeepLinkKit使用Universal Links的部分 ---------------------------------------- ...
- @Override用在哪儿
帮朋友改一段代码,看到好多红叉都是指向@Override. 是这样,他代码里写了一个接口.方法都用抽象函数声明在接口类里.然后在继承自这个接口的实现类里写详细方法的空壳 ...
- MySQL通过函数获取字符串汉字拼音首字母大写字符串
DELIMITER $$ DROP FUNCTION IF EXISTS `Fun_GetPY`$$ CREATE FUNCTION `HIS`.`Fun_GetPY` (in_string VARC ...
- js中createlement和creatTextnode属性
js中可以使用creatElement方法创造一个新的元素,使用creatTextnode创造一个新的text文本元素. 之后使用appendchild插入到已存在的元素中. ** window.on ...