携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第22天juejin.cn/post/712312…
函数
1、函数的概念,也是作用:是完成指定功能的程序代码(程序段),可以反复调用,减少代码冗余。函数只要不调用,里面不管写的是什么,都无法使用。里面包含全局变量,也不会被使用。
2、语法1:这是不带返回值的函数,能够输出alert是因为函数自己本身所带的功能
Function 空格 函数名(形参1,形参2…){
语句;
语句;
[return]
}
调用函数:函数名(实参);
形参是用来接收实参的,实参是一个值(实参是赋值给形参的)
语法2:创建函数另一种方法(通过声明变量的方法创建函数)
Var fnName=function(){
语句;
。。。
}
fnName();
有的函数没有函数名和参数,也有return
函数调用本身也是个表达式
Var res=sum(1,2) alert(res);输出res的结果是return返回的值
Return是作为函数调用的结果(作为函数调用的返回值),return后面可以是任何东西,也可以是表达式,然后给函数调用赋值给一个新的变量,在alert输出这个新的变量
Return 放在函数的最后一行
Return 作用:1、结束函数
匿名函数
解释:匿名函数就是函数的第二种创建方法
作用:可以作为一个参数传给函数
1、函数的第二种创建方法,相当于把整个函数赋值给fnName,只不过赋值的是整个函数
2、把函数作为一个实参,传到另一个函数的形参里
回调函数:不是一种函数本身的写法,是把一个函数作为另一个函数的参数(实参,实参名是完成程序的函数名),传进去(传给形参),并调用(在另一个函数体里调用),这个函数就叫回调函数。
递归函数:自己调自己;
构造函数:主要用来构造对象;
内部(私有)函数
要背下来,变量的作用域:(尽可能多用私有变量)
全局变量:在函数外定义的变量,在当前程序任何位置都可以使用
局部变量(私有变量):在函数内定义的变量,只能在该函数里用
函数的作用域, 在函数外面创建的函数可以全局使用,在函数里面又创建了一个b函数,b就是私有函数
补充:alert(sname);
Var sname=”tom”;
结果:浏览器弹出警示框并输出undefined。先使用在创建,会把变量声明var sname;提升到alert之前,=“tom”不会提升。这种情况称为变量提升。这是es5的一个bug
用var声明的都存在变量提升的问题
系统函数(系统已经创建好的,直接调用就可以)调用时,()里需要些一个url
1、 URL编码函数:encodeURI() ()里写url地址,然后把encodeURI()赋值给一个新的变量enurl,在输出的,就能编码
例子:
2、 URL解码函数:decodeURI()
3、 数据类型转换函数-转换为整数:parseInt();转换失败返回NaN
4、 数据类型转换函数-转换为实数:parseFloat();转换失败返回NaN
5、 判断是否是非数字:isNaN();
6、 执行字符串表达式或执行js语句字符串:evalr
数据类型转化:字符串转为数值型,字符串开头是数字,后面是字母例如(var x=“123abc”),会尝试转换为数值型,alert(x)输出结果会是123,开头是字母,例如(var x=“abc123”),后面是数字, alert(x)输出结果会是NaN.