博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript学习笔记——函数
阅读量:6264 次
发布时间:2019-06-22

本文共 3118 字,大约阅读时间需要 10 分钟。

javascript函数的声明和调用

将完成某一特定功能的代码集合起来,可以重复使用的代码块。

 

一、函数的声明方式(创建)

A.基本语法

function 关键字
function 函数名([参数1],[参数2]....){
函数体
[retrun] //返回值
}
B.字面量定义的形式(匿名函数)

var 变量=function ([参数1],[参数2]....){

函数体
[retrun] //返回值
}

C.以对象的形式来声明

new 关键字。

var 变量=new Function([参数1],[参数2]...,"函数体");

//函数的第一种声明方式 /*   function math () {   var num1=parseFloat(prompt("请输入",""));   var num2=parseFloat(prompt("请输入",""));   var operator=prompt("请输入运算符","");   var result;   switch (operator) {   case "+":      result=num1+num2;      break;   case "-":      result=num1-num2;      break;   case "*":      result=num1*num2;      break;   case "/":      result=num1/num2;      break;   default:      result="输入有误";         }     return result;   }      alert(math());   alert(math())   *///函数的第二种声明方式 /*  var fun=function  () {   var num1=parseFloat(prompt("请输入",""));   var num2=parseFloat(prompt("请输入",""));   var operator=prompt("请输入运算符","");   var result;   switch (operator) {   case "+":      result=num1+num2;      break;   case "-":      result=num1-num2;      break;   case "*":      result=num1*num2;      break;   case "/":      result=num1/num2;      break;   default:      result="输入有误";         }     return result;   }       alert(fun()); */ //函数的第三种声明方式//  var fun=new Function(alert("后盾网"))//  fun();

二、函数的调用方式:

A.函数名() 、变量名();

B.(function () {alert("后盾网");})();

三、两种声明方式的区别

1.如果两个函数的命名相同,后面的将会覆盖前面的函数。

2.以基本语法声明的函数,会在代码运行的时候,提前加载到内存当中(就是以function开头的格式),以供以后使用,
但是以字面量形式命名的函数,会在执行到的时候,才进行赋值

3.在不同的<script></script>块中的函数,使用和调用的时候,应该先定义,后执行

 

javascript函数的参数和return语句

一、参数(最多是25)

可以动态的改变函数体内对应的变量的类型或值,使同一函数体得到不同的结果。

形参:在定义函数的时候,函数括号中定义的变量叫做形参。

实参:调用函数的时候,在括号中传入的变量或值叫做实参。

1.参数的类型

可以是任何的数据类型
2.参数的个数(最多是25)
A.实参和形参数量相等,一一对应。

B.形参的数量多于实参

************************************************
不会报错,但是多出的参数他的值会自动赋值为undefined
************************************************
C.实参的数量多于形参
************************************************
不会报错,但是要得到多出的实参的值,要用arguments对象

************************************************

二、Arguments对象

每创建一个函数,该函数就会隐式创建一个arguments对象,他包含有实际传入参数的信息

1.length 检测实际传入参数的个数

2.callee 对本身的调用
3.访问传入参数的具体的值。([下标])(如arguments[0])

三、函数重载

同一个函数因为参数的类型或数量不同,可以对应多个函数的实现,每种实现对应一个函数体。

四、return 语句

一、停止并且跳出当前的函数

1.在ruturn 语句后面的函数体内所有内容都不会输出。
2.在函数体内可以有多个return语句,但是只会执行一个。(判断语句)

二、给函数返回一个值 return [返回值];

1.返回值可以是任何的数据类型
2.只能返回一个返回值。
3.如果函数没有返回值,那么这个函数的值就会自动的赋值为undefined

 

javascript 内置顶层函数

名词解释:

1.函数

2.内置: ECMAscript

内置函数:ECMAscript 自带的函数 Number()
宿主函数: BOM DOM alert() prompt() confirm();
//confirm() 弹出一个带有确定和取消按钮的一个对话框,确定返回真,取消返回假。

3.顶层

字符串函数:字符串.函数()
数组函数
顶层对象的函数,可以作用于任何对象。

内置顶层函数

1.escape() 对字符串进行编码

2.unescape() 对编码的字符串进行解码

3.Number() 转换成数值类型

4.String() 转换成字符串类型

5.Boolean() 转换成布尔类型

6.parseInt() 将字符串转换为整型

7.parseFloat() 转换为小数

8.isNaN() 判断一个数能否转换为数值类型。

9.isFinite() 判断一个数是否为有穷的数字。将不是有穷的数字或不能转换为数值类型的数返回假。

10.eval() 将字符串转换成javascript命令执行(必须符合javascript语法规范,否则会出错)。

IE:
eval() 在当前作用域生效
window.eval() 在当前作用域生效
execScript()

FF:

eval() 在当前作用域生效

window.eval() 在全局生效

 

使代码在作用于上兼容IE

function evals (str) {   if(typeof str!="string"){     return;   }  if(window.execScript){     window.execScript(str);  }else{    window.eval(str);  }}

 

转载地址:http://jqzpa.baihongyu.com/

你可能感兴趣的文章
【Cocos2d-x游戏开发】细数Cocos2d-x开发中那些常用的C++11知识
查看>>
otl使用存储过程或是LEFT JOIN时提示输出类型未知的问题
查看>>
集群(cluster)原理(转)
查看>>
小数格式:
查看>>
【MyBatis学习06】_parameter:解决There is no getter for property named in class java.lang.String...
查看>>
Eclipse导入别人的项目报错:Unable to load annotation processor factory 'xxxxx.jar' for project...
查看>>
与孩子一起学编程10章
查看>>
【再探backbone 03】博客园单页应用实例(提供源码)
查看>>
android 圆角编写(懒得去找,写给自己看的)
查看>>
chrome 搜索 jsonView
查看>>
chrome浏览器:chrome 69 恢复默认UI
查看>>
Irony - 一个 .NET 语言实现工具包
查看>>
Java之Static静态修饰符详解
查看>>
修改weblogic部署的应用名称
查看>>
aaronyang的百度地图API之LBS云与.NET开发 Javascript API 2.0【基本地图的操作】
查看>>
Java Nio 多线程网络下载
查看>>
C++不让程序一闪而过
查看>>
C# 中的枚举类型 enum (属于值类型)
查看>>
[Debug] Use Snippets to Store Behaviors in Chrome DevTools
查看>>
【Java面试题】3 Java的"=="和equals方法究竟有什么区别?简单解释,很清楚
查看>>