javascript基础学习(五)
javascript之函数
学习要点:
函数的介绍
函数的参数
函数的属性和方法
系统函数
一、函数的介绍
1.函数就是一段javascript代码。可以分为用户自定义函数和系统函数。
如果一个函数是javascript内置的函数,就称为系统函数。如果函数是自己编写的函数,就是自定义函数。
2.在javascript用function来定义一个函数。function 函数名(参数1,参数2,...){<语句块> return 返回值} (PS:return语句可以省略)
3.函数的嵌套定义,只能出现在函数中,不能出现在选择语句或循环语句中。
4.除了使用function语句定义函数,还可以使用Function()构造函数来定义函数。语法代码如下:
var 函数名=new Function(”参数1“,”参数2“,...,”函数体“);如:var mySum=new Function("x",”y","return x+y");
ps:Function()构造函数和function语句定义函数的区别:
Function()构造函数可以动态定义和编译函数,而function语句只能预编译函数。在每次调用Function()构造函数定义的函数时,javascript都要去编译一次该函数。因此,对于经常使用的函数,应避免使用Function()构造函数来定义函数。
还可以在表达式中定义函数:var 函数名=function(参数1,参数2,...){函数体}; 如:var mySum=function(x,y){return x+y};
二、函数的参数
1.传递的参数类型和函数中所需要的数据类型不符
function myFun(x,y)
{
var z=x*y;return z;
}
document.write(myFun(2,4)+"<br>");//
document.write(myFun(2,"s")+"<br>");//NaN
2.传递的参数个数与函数定义的参数个数不匹配
如果传递的参数个数小于函数定义的参数个数,会将多余的参数值设为undefined。如果传递的参数个数大于函数定义的参数个数,多余的参数将会被忽略掉。
3.在javascript中,提供了一个arguments对象,该对象可以获取实际传递过来的参数,并将这些参数放在arguments[]数组中。
argements对象除了可以判断实际传递的参数个数,还可以获取实际传递参数的值。
ps:虽然arguments可以作为数组来使用,但是arguments并不是一个数组,而是一个对象。
三、函数的属性和方法
函数也是一个对象,也拥有自己的属性和方法。
1.length属性:获取函数定义参数个数。
arguments对象拥有一个callee属性,该属性的作用是引用当前正在执行的函数。
arguments.length(获取实际参数个数) 与 arguments.callee.length(获取函数定义个数)
2.prototype属性:引用原型对象
function pen(color,price)
{
this.color=color;
this.price=price;
}
var pen1=new pen("红色",21);
pen.prototype.name="钢笔”;
document.write("笔的颜色是:“+pen1.color+"<br>"); //红色
document.write("笔的价格是:“+pen1.price+”<br>"); //
document.write("笔的名称是:“+pen1.namer+"<br>");//钢笔
四、系统函数
1.编码函数escape():将字符串中的非文字、数字的字符如&、%、$转换成相应的ASCII码值。
2.解编码函数unescape():将ASCII码的文字转换为一般文字。
3.求值函数eval():将字符串指定为对象。
function pen(color,price)
{
this.color=color;
this.price=price;
}
var pen1=new pen("红色",21);
var pen2=new pen("蓝色",20);
var pen3=new pen("粉色",21);
for(i=1;i<4;i++){
var penx=eval("pen"+i);
document.write("笔的颜色是:“+penx.color+"<br>");
document.write("笔的价格是:“+pen1.price+”<br>");
}
4.数值判断函数isNaN():判断变量是否为数值型变量。
5.parseInt():将数据转换为整数。在将二进制、八进制、十六进制转化为十进制。其中,二、八、十六进制数据必须是字符串型。
6.parseFloat():将字符串数据转换为浮点数。
javascript基础学习(五)的更多相关文章
- JavaScript基础学习(五)—其他引用类型
JavaScript定义了两个内置对象: Global和Math. 一.Global对象 1.URI编码方法 Global对象的encodeURI()和encodeURICompo ...
- JavaScript 基础学习1-day14
JavaScript 基础学习1 知识预览JavaScript概述二 JavaScript的基础三 JavaScript的对象BOM对象DOM对象实例练习js扩展 JavaScript概述 JavaS ...
- 48.javascript基础学习
javascript基础学习: http://www.w3school.com.cn/jsref/index.asp jS的引入方式: 1.行间事件:为某一个具体的元素标签赋予js内容,oncli ...
- JavaScript 基础学习(二)js 和 html 的结合方式
第一种 使用一个标签 <script type="text/javascript"> js代码; </script> 第二种 使用 script 标签,引入 ...
- Python基础学习五
Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...
- JavaScript 基础 学习 (四)
JavaScript 基础 学习 (四) 解绑事件 dom级 事件解绑 元素.on事件类型 = null 因为赋值的关系,所以给事件赋值为 null 的时候 事件触发的时候,就没有事件处理 ...
- JavaScript 基础 学习(三)
JavaScript 基础 学习(三) 事件三要素 1.事件源: 绑定在谁身上的事件(和谁约定好) 2.事件类型: 绑定一个什么事件 3.事件处理函数: 当行为发生的时候,要执行哪一个函数 ...
- JavaScript 基础 学习 (二)
JavaScript 基础 学习 节点属性 每一个节点都有自己的特点 这个节点属性就记录着属于自己节点的特点 1. nodeType(以一个数字来表示这个节点类型) 语法:节点.nodeT ...
- JavaScript 基础 学习 (一)
JavaScript 基础 学习 获取页面中的元素的方法 作用:通过各种方式获取页面中的元素 比如:id,类名,标签名,选择器 的方式来获取元素 伪数组: 长的和数组差不多,也是按照索引排 ...
- 几张非常有意义的JavaScript基础学习思维图
分享几张对于学习JavaScript基础知识非常有意义的图,无论你的JavaScript级别如何,“温故而知新”完全可以从这些图中得到. 推荐理由:归类非常好,非常全面 JavaScript 数组 J ...
随机推荐
- bzoj1260
很容易脑补出来的区间dp O(n3)的 var f:array[0..51,0..51] of longint; i,n,j,l,k:longint; s:string; function ...
- IOS7官方推荐图标和图像尺寸
图标和图像大小 每一个应用程序需要一个应用程序图标和启动图像.此外,一些应用程序需要自定义的图标来表示特定于应用程序的内容,功能,或在导航栏,工具栏和标签栏模式. 不像其他的定制艺术品在您的应用程序的 ...
- 【转】[WCF REST] 帮助页面与自动消息格式(JSON/XML)选择
可以说WebHttpBinding和WebHttpBehavior是整个Web HTTP编程模型最为核心的两个类型,前者主要解决消息编码问题,而余下的工作基本上落在了终结点行为WebHttpBehav ...
- mysql数据库还原出错ERROR:Unknown command ‘\\’解决手记
使用mysql命令行客户端,使用source导入备份文件,但导入中出错, ERROR: Unknown command ‘\\’. ERROR: Unknown command ‘\”. ERROR: ...
- BZOJ1015 [JSOI2008]星球大战starwar(并查集)
1015: [JSOI2008]星球大战starwar Time Limit: 3 Sec Memory Limit: 162 MBSubmit: 3895 Solved: 1750[Submit ...
- zabbix2.2.3 VMware Vsphere exsi监控配置步骤
zabbix2.2.3 VMware Vsphere exsi监控配置步骤, 1,添加监控主机 2,添加聚集macro;{$PASSWORD} = yoodo.com{$URL} = http://i ...
- 最常用的 Eclipse 快捷键总结
本文是一些最实用.最齐全.最省时间的 Eclipse 快捷键总结,这些快捷键可以让帮助你完成工作中的任何一个操作.欢迎参考. 1. ctrl+shift+r:打开资源 这可能是所有快捷键组合中最省时间 ...
- 【基础】多线程更新窗体UI的若干方法
一.前言 在单线程中设置窗体某个控件的值很简单的事,只需要设置控件文本的值就可以了,但是有的业务场景很是复杂,界面上的控件也很多,这种情况下当数据量比较多的时候,在单线程中更新UI不可避免地会发生假死 ...
- Spring事务-三种实现方式
一.引入JAR文件: 二.开始搭建分层架构---创建账户(Account)和股票(Stock)实体类 Account: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...
- winform DataGridView 导出到Excel表格 分类: WinForm 2014-07-04 10:48 177人阅读 评论(0) 收藏
public bool ExportDataGridview(DataGridView gridView) { if (gridView.Rows.Count ...