javascript03
Posted yqycr7
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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;
*/
以上是关于javascript03的主要内容,如果未能解决你的问题,请参考以下文章