第二章 函数简介

1 第一个函数示例

 <script language="JavaScript" type="text/JavaScript">

 function bark(name,weight)

 {

 if(weight>20)

 console.log(name+" says WOOF WOOF");

 else

 console.log(name+" says woof woof");

 }

 bark("rover",23);

 bark("spot",18);

 </script>

2 函数参数错误处理

传入参数不够,将没有相应参数实参的形参设置成未定义

如果传递的参数太多,js将忽略多余的参数

如果无return返回undefined

第三章 数组

1 第一个示例

 var score=[];

 var myarray=new Array(3);

 myarray[1]="asdf";

 scores=[60,50,60,58,54,52];

 var solution2=scores[2];

 var Length=scores.length;

 alert("There are "+Length+"solutions and Solution 2 produced "+solution2+" bubbles."+"and "+myarray[1]+"!");

2 第二个示例:

 <!doctype html>

 <html lang="en">

 <head>

 <title>Battleship</title>

 <meta charset="utf-8">

 </head>

 <body>

 <script language="JavaScript" type="text/JavaScript">

 var scores=[60,50,60,58,54,54,

 58,50,52,54,48,69,

 34,55,51,52,44,51,

 69,64,66,55,52,61,

 46,31,57,52,44,18,

 41,53,55,61,51,44];

 var highscore=printAndGetHighScore(scores);

 console.log("Bubbles test: "+scores.length);

 console.log(" Hightest Bubble score: "+highscore);

 var bestSolutions=[];

 bestSolutions=getBestResults(scores,highscore);

 console.log("Solution with the hightest score: "+bestSolutions);

 function printAndGetHighScore(scores)

 {

 var highscore=0;

 var output;

 for(var i=0;i<scores.length;i++)

 {

 output="Bubble solutoin #"+i+" score: "+scores[i];

 console.log(output);

 if(scores[i]>highscore)

 highscore=scores[i];

 }

 return highscore;

 }

 function getBestResults(scores,highscore)

 {

 var bestSolutions=[];

 //var j=0;

 for(var i=0;i<scores.length;i++)

 {

 if(scores[i]==highscore)

 {

 //bestSolutions[j]=i;

 //j++;

 bestSolutions.push(i);

 }

 }

 return bestSolutions;

 }

 </script>

 </body>

 </html>

JavaScript学习笔记(二)——函数和数组的更多相关文章

  1. 【JavaScript学习笔记】函数、数组、日期

    一.函数 一个函数应该只返回一种类型的值. 函数中有一个默认的数组变量arguments,存储着传入函数的所有参数. 为了使用函数参数方便,建议给参数起个名字. function fun1(obj, ...

  2. Javascript学习笔记二——操作DOM

    Javascript学习笔记 DOM操作: 一.GetElementById() ID在HTML是唯一的,getElementById()可以定位唯一的一个DOM节点 二.querySelector( ...

  3. 廖雪峰 JavaScript 学习笔记(函数)

    JavaScript中,定义函数的方式如下: function abs(x) { if (x >= 0) { return x; } else { return -x; } } 上述abs()函 ...

  4. JavaScript学习笔记(二)——闭包、IIFE、apply、函数与对象

    一.闭包(Closure) 1.1.闭包相关的问题 请在页面中放10个div,每个div中放入字母a-j,当点击每一个div时显示索引号,如第1个div显示0,第10个显示9:方法:找到所有的div, ...

  5. javascript学习笔记--迭代函数

    概要 这里的迭代函数指的是对数组对象的操作方法,js数组共有五个迭代函数:every.fifter.forEach.map.some. 1.every every方法,返回值为Boolean类型,tr ...

  6. javascript学习笔记二

    1.js的string对象 **创建 String对象 *** var str = "abc"; **方法 和 属性(文档) *** 属性 length : 字符串的长度 ***方 ...

  7. 廖雪峰 JavaScript 学习笔记(字符串、数组和对象)

    字符串 1.和python一样,也是用' '或" "括起来的字符表示.但多行字符串是用反引号(esc下键)``,与之相对的是Python用''' '''三引号表示: 2.转义字符: ...

  8. Objective-C 学习笔记(二) 函数

    Objective-C 函数 定义一个方法 在Objective-C编程的方法定义的一般形式如下: - (return_type) method_name:( argumentType1 )argum ...

  9. Python学习笔记二--函数

    1.使用global语句定义全局变量 2.默认参数 默认参数值应该是不可变的.注意: 只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认值的 ...

  10. javascript学习笔记(四) Number 数字类型

    数字格式化方法toFixed().toExponential().toPrecision(),三个方法都四舍五入 toFixed() 方法指定小数位个数  toExponential() 方法 用科学 ...

随机推荐

  1. Gradle Goodness: Group Similar Tasks

    In Gradle we can assign a task to a group. Gradle uses the group for example in the output of $ grad ...

  2. 优先队列之二叉堆与d-堆

    二叉堆简介 平时所说的堆,若没加任何修饰,一般就是指二叉堆.同二叉树一样,堆也有两个性质,即结构性和堆序性.正如AVL树一样,对堆的以此操作可能破坏者两个性质中的一个,因此,堆的操作必须要到堆的所有性 ...

  3. Spring 事务传播行为的使用

                                                                                                        ...

  4. iOS12适配及问题记录,Debug正常使用,Release数据为nil的报错

    Debug模式数据一切正常,打包出去的ipa,Release模式下数据为nil的错误,经排查,buiding中的Optimization Level, Release设为None,解决问题. IOS1 ...

  5. S2-01

    类: 类是对象的虚例,类是对象的集合,类是对象的模板. 对象是类的实例.(可以 0到多个.) .NET Framwork vs版本 .NET Framwork 1.0 /1.1 vs2003 .NET ...

  6. thinkphp3.2 上传图片兼容小程序

    第一步在配置文件中设置图片的大小和路径 return array( //'配置项'=>'配置值' 'img_save'=>[ 'size' =>[ 'app_gszc_Card'=& ...

  7. redis应用场景:实现简单计数器-防止刷单

    redis应用场景:实现计数器-防止刷单 最近由于双11要来临,公司需要在接口请求上,做一下并发限制的处理,或者做一个防止刷单的安全拦截:比如:一个接口请求,限制每秒请求总数为200次,超过200次就 ...

  8. vue-cli构建的vue项目中引入stylus文件

    在写基于vue-cli的vue项目时,如果直接引入styl文件,会报错,需要安装stylus.stylus-loader依赖以及别名配置. 1.下载安装stylus.stylus-loader,推荐使 ...

  9. 无缘DELPHI的BUG

    有个很简单的小错误,看一眼好象是DELPHI的BUG,结果找了一个晚上,后面才发现出错还是自己造成的原因. CLIENTDATASET.LOCATE ! 以为它工作出问题了,后来仔细比对,原来有个数据 ...

  10. Python学习 :socket基础

    socket基础 什么是socket? - socket为接口通道,内部封装了IP地址.端口.协议等信息:我们可以看作是以前的通过电话机拨号上网的年代,socket即为电话线 socket通信流程 我 ...