JavaScript(3)
来源:互联网 发布:数据库系统的二级映射 编辑:程序博客网 时间:2024/06/06 00:11
JavaScript
JavaScript 函数
1.JavaScript 变量的生存期
JavaScript 变量的生命期从它们被声明的时间开始。
局部变量会在函数运行以后被删除。
全局变量会在页面关闭后被删除。
2.向未声明的 JavaScript 变量分配值
如果您把值赋给尚未声明的变量,该变量将被自动作为全局变量声明。
这条语句:
carname = "Volvo";
将声明一个全局变量 carname,即使它在函数内执行。
3. JavaScript 参数
- 返回值
函数没有返回值时,其返回值是undefined
- 通过值传递参数
在函数中调用的参数是函数的隐式参数。
JavaScript 隐式参数通过值来传递:函数仅仅只是获取值。
如果函数修改参数的值,不会修改显式参数的初始值(在函数外定义)。
隐式参数的改变在函数外是不可见的。
- 通过对象传递参数
在JavaScript中,可以引用对象的值。
因此我们在函数内部修改对象的属性就会修改其初始的值。
修改对象属性可作用于函数外部(全局变量)。
修改对象属性在函数外是可见的。
4.JavaScript 匿名函数
函数表达式可以存储在变量中,变量可以作为一个函数使用,也可以将匿名函数作为参数传递给其他函数,如果需要完成一次性的任务,可以用匿名函数
5.JavaScript 函数的重载
允许在同一范围内声明几个功能类似的同名函数,但是这些同名函数的形式参数(指参数的个数或类型或顺序)必须不同,也可以说同一个运算符完成不同的运算功能,称之为重载函数
- 函数有不同的参数
- 函数有不同的参数类型
在JavaScript中,如果函数名一样会出现覆盖的情况,无法实现函数的重载
JavaScript并没有重载函数的功能,但是arguments对象可以模拟重载
JavaScript中每个函数都会有一个arguments对象实例arguments,它引用着函数的实参,可以用数组的下标方式”[]”引用arguments的元素
- arguments.length 函数实参的个数
arguments.callee 引用函数自身
// 通过这种方式你可以很方便的找到最大的一个参数的值:x = findMax(1, 123, 500, 115, 44, 88);function findMax() { var i, max = arguments[0]; if(arguments.length < 2) return max; for (i = 0; i < arguments.length; i++) { if (arguments[i] > max) { max = arguments[i]; } } return max;}// 创建一个函数用来统计所有数值的和x = sumAll(1, 123, 500, 115, 44, 88);function sumAll() { var i, sum = 0; for (i = 0; i < arguments.length; i++) { sum += arguments[i]; } return sum;}
6.JavaScript 数组
数组是值得有序集合,每个值是数组的一个元素,每一个元素在数组都有一个位置,称为索引
- JavaScript数组是无类型的,数组的元素可以使任意类型,并且同一个数组中的元素可以是不同类型
- 数组的长度是可以动态变化的,可以添加和删除元素
- Array数组数组的有序列表,索引从0开始
- 他同一个数组可以存储不同类型的数据,也可以没有类型,但是每一个数组都有length属性
var aColor = ["black", "green", "blue"]; var num = [1, 2, 3]; var empty = []; var wrong = [1,3,4,];//不要这样创建数组 var people = new Array(5); people[0] = "WangHao"; peopel[1] = "LiuQian"; var places = new Array("CN", "UK", "USA", "JP");
- javaScript循序渐进(3)
- JavaScript 基础(3)
- javascript笔记(3)
- JavaScript笔记(3)
- javascript学习(3)
- Javascript-基础知识(3)
- JavaScript基础知识(3)
- javaScript基础知识(3 )
- JavaScript基础(3)
- JavaScript基础知识(3)
- JavaScript基础-(3)
- JavaScript对象--(3)
- JavaScript(3)
- 3-day(JavaScript)
- JavaScript 图片3D展示空间(3DRoom)javascript
- JavaScript总结(3)-javascript中应用正则表达式
- javascript学习3——javascript面向对象(上)
- JavaScript学习总结(3)——JavaScript函数(function)
- PHP将Excel导入数据库及数据库数据导出至Excel的方法 亲测
- 单例模式 (二) 延迟加载/"懒汉模式" —— 使用DCL双检查锁机制
- Teamcenter11.2.3.1 安装时遇到的TreeCache无法创建的问题
- 微信支付签名遇到的坑
- Unity 脚本之间的消息传递,事件管理
- JavaScript(3)
- ios10.1上 交叉编译 boost1_64_0
- 第一个annotation版的HelloWorld
- 237. Delete Node in a Linked List(C语言版本)
- 相对路径面试题
- php 发送邮件教程 发送邮件附带附件 利用PHPMailer发送邮件教程
- Qt自定义加载控件Spinner
- 写的程序出现"open clipboard失败"的解决办法
- Python SqlAlchemy数据库持久化使用方法