时不我待cr7

javascript03

函数

1.什么是函数

把一段相对独立的具有特定功能的代码块封装起来,形成一个独立实体,就是函数,并将之命名(函数名),在后续的开发中可以反复调用。

函数的作用就是封装代码,将来反复调用!

2.函数的定义

1函数的声明:

function 函数名(){

// 函数体

}

特点:函数声明的时候,函数体并不会执行,只要当函数被调用的时候才会执行。并且可以多次的调用!

3.函数的调用

语法:

函数名();

特点:函数只有在调用的时候才会执行,调用时需要()进行调用!

eg :function sayHi() {

conslog.("你好");

//调用函数

sayHi();

4.函数的参数

函数内部是封闭的环境,可以通过参数的方式把外部的值传递给函数内部

eg

function 函数名(形参1,形参2,形参3......){

//函数主体

函数名(实参1,实参2,实参........);

4.1形式参数:在声明一个函数时,有些值固定不了,用形参起到占位置的作用;

实际参数:调用时传入函数的新值

var x = 5, y = 6;

fn(x,y);

function fn(a, b) {

console.log(a + b);

}

作用域

作用域:变量可以起作用的范围或者说变量的生命周期;

作用域分类:

1.函数作用域:

1.1该钟变量只有在当前(函数)作用域内才可以访问

1.2在函数体中使用var关键字定义的变量才算是局部变量

eg

var c =100;//全局变量

 

function fun1(num1){

console.log(a);//变量提前声明

var a = 10;

a++;

b=10;//在函数体中不通过var关键字定义且赋值了的变量 ,就会成为全局变量

}

fun1(2);

console.log(b);

console.log(num1);

console.log(a);//语法错误,因为a是在函数体中的变量 访问方位只在函数里面

作用域链:只有函数可以构造作用域结构!只要是代码,就至少有一个作用域,即全局作用域。代码中若是有函数,那么这个函数就构成另一个作用域。如果还有,还可以构成一个作用域!函数内部指向函数外部的机构就称为作用域链.

eg

function f1() {

function f2() {

}

}

 

var num = 456;

function f3() {

function f4() {

}

}

流程控制

任何复杂的算法都有以下几种结构:

顺序结构:从上到下执行的代码就是顺序结构

程序默认就是由上到下顺序执行的

分支结构:根据不同的情况,执行对应代码

循环结构:重复做一件事情

 

1.if语句

if (/* 条件表达式 */) {

// 执行语句

}

 

if (/* 条件表达式 */){

// 成立执行语句

} else {

// 否则执行语句

}

 

if (/* 条件1 */){

// 成立执行语句

} else if (/* 条件2 */){

// 成立执行语句

} else if (/* 条件3 */){

// 成立执行语句

} else {

// 最后默认执行语句

}

 

1、条件应该是boolean类型得分值或表达式

2、如果条件不是boolean的话,会自动进行转换

以下几种情况会默认转换为 false

if(0){}

if(0.0){}

if(NaN){}

if(undefined){}

if(""){}

if(null){}

if(false){}

除了以上的情况,其他都转换为true

if(1){}

if(2){}

if("今天天气好好呀!"){}

2.switch语句

/ 作用: 为了简化 等值判断 的条件判断结构

/*语法:

switch(变量/表达式){

case 值1:

语句块1;

break;//该语句块结束 可以省略

case 值2:

语句块2;

break;

... ...

default:

语句块n;

break;

}

执行流程:

1、解析 变量或表达式 中的值

2、用解析出来的值 与case后的值进行等比比较

如果比较的结果成功,则执行case后面的代码块

执行完后,如果碰到break 则结束整个switch结构,否则继续向下执行

 

3、如果case后的值与 解析出来的值均不等值,则执行default后的代码块

switch 直落形式

两块或多块case之间,没有任何操作代码,表示多块case要执行同样的操作

switch(变量/表达式){

case 值1:

case 值2:

case 值3:

语句块;

break;

case 值4:

case 值5:

语句块;

break;

}*/

posted on 2019-07-30 10:29  时不我待cr7  阅读(122)  评论(0编辑  收藏  举报

导航