(六)函数

  • 函数的指针调用方式

通过指针来调用函数,毁掉函数按照调用者的约定实现函数的功能,由调用者调用。通常使用在自定义功能而由第三方去实现的场合。

  • 函数的参数

函数的参数是函数与外界交换数据的接口。

JS的函数参数信息由arguments对象管理。

arguments对象代表正在执行的函数和调用它的参数。函数对象的length属性说明函数定义时指定的参数个数(形参),arguments对象的length属性说明调用函数时实际传递的参数个数(实参)。arguments对象不能显式创建,函数在被调用时由JS运行时环境创建并设定各个属性值,其中包括各个参数的值。通常使用arguments对象来验证所传递的参数是否符合函数要求。

  • 函数返回类型

返回类型分两种类型,即值类型和引用类型。值传递使用的是值传递方式,即传递数据的副本;而引用类型则是引用传递方式,即传递数据的地址。

一般,函数返回的非对象数据都使用值返回方式。数据量比较小的时候使用值传递,数据量比较大时使用引用传递。

function get(){
    var List = new Array("Lily","Petter");
    return List;
}
var nals=get();
alert(nals);
nals=null;
alert(nals);
function get(){
  function sum(a,b){
    return a+b;
  }
  return sum;
}
var sumoftwo=get();
var total=sumoftwo(1,2);
alert(sumoftwo);
alert(total);

第一段代码中nals获取数组List的一个引用,最后等于null断开变量nals对数组对象的引用,这一操作将删除数组对象。

第二段代码中sumoftwo是这个东西

function sum(a,b){
    return a+b;
  }
  return sum;也就是说他是一个函数。然后调用
  • 函数的分类

分为构造函数,有返回值函数和无返回值函数。构造函数与一个特定的对象联系起来。

JS是基于对象的语言而不是真正面向对象的语言。没有类的概念,完成一个类的定义只需要一个构造函数即可。

function Employee(name,sex,adr){
    this.name=name;
    this.sex=sex;
    this.adr=adr;
    this.getName=getName;//方法:取得雇员姓名
}
function getName(){
    return this.name;
}
var e = new Employee("sunsir","男","贵州贵阳");
var n=e.getName();
alert(n);

有返回值的函数

function mul(arg1,arg2){
    return arg1*arg2;
}
  • 函数的作用域

每一个函数在执行时都处于一个特定的运行上下文中,该上下文决定了函数可以直接访问到的变量,那些变量所处的范围称为该函数的作用域。

公有函数和私有函数。

一般定义的都为公有函数。当函数嵌套定义时,子级函数就是父级函数私有函数,外界不能调用私有函数。

  • this关键字

this关键字引用运行上下文中的当前对象,JS的函数调用通常发生于某一个对象的上下文中。如果尚未指定当前对象,则调用函数的默认当前对象时Global,使用call方法可以改变当前对象为指定的对象。

var chair="公园的椅子";//公物,谁都可以用
function TomHome(){
  this.chair="汤姆家的椅子";//汤姆家的椅子
}
function useChair(){
  alert(this.chair);//输出当前椅子的信息
}
var th=new TomHome();//定义一个新家

useChair();//当前的场景是公园,其属于Global对象的属性
useChair.call(th);//指定当前场景为新家,汤姆家,于是this就是指新生成的汤姆家
时间: 2024-10-11 21:32:24

(六)函数的相关文章

JavaScript基础学习(六)—函数

一.函数的定义 1.function语句形式 //1.function语句式 function test1(){ alert("I am test1"); } test1(); 2.函数直接量形式 //2.函数直接量形式 var test2 = function(){ alert("I am test2"); } test2(); 3.通过Function构造函数形式 Function构造函数可以接收任意数量的参数,但最后一个参数始终都被看成函数体.我们不推荐使用,

深入理解PHP内核(六)函数的定义、传参及返回值

一.函数的定义 用户函数的定义从function 关键字开始,如下 function foo($var) { echo $var; } 1.词法分析 在Zend/zend_language_scanner.l中我们找到如下所示的代码: <ST_IN_SCRIPTING>"function" { return T_FUNCTION; } 它所表示的含义是function将会生成T_FUNCTION标记.在获取这个标记后,我们开始语法分析. 2.语法分析 在Zend/zend_

【Swift】学习笔记(六)——函数

函数  懂编程语言的来说这个是最主要的了,不论什么语言都有函数这个概念.函数就是完毕特定任务的独立代码块. 函数怎么创建: 1.创建一个无參无返回值的函数(实际上全部的函数都有返回值,这个函数返回void,它是一个空元组) func testFunc(){ } 2.创建一个带返回值的函数 func testFunc() -> String{ return "hello" } 3.创建一个带參数和返回值的函数 func testFunc(name: String) -> St

Python 基础语法六 ——函数

一个程序可以按不同的功能实现拆分成不同的模块,而函数就是能实现某一部分功能的代码块. 1.函数的概述 定义:在Python中,定义个函数要使用 def 语句,一次写出函数名.括号.括号中的参数和冒号(:),然后在缩进块中编写函数体,函数的返回值用return 语句返回. def area_of_square(x): s = x*x return s 1 def area_of_square(x): 2 s = x*x 3 return s 2.全局变量 定义:在函数外面定义的变量称为全局变量.

数据库系列学习(六)-函数之数学函数

1.绝对值 2.随机数 (1)不带种子的 (2)带种子的 3.四舍五入 (1)四舍五入 (2)求最大整数 (3)求最小整数 4.三角函数 (1)正弦,余弦,正切 (2)反正弦,反余弦,反正切 (3)两个变量的反正切 (4)两个变量的余切 5.圆周率 6.角度制 与 弧度制 (1)弧度制转换为角度制 (2)角度制转换为弧度制 7.求一个数的符号 8.两个数相除 (1)求余数 (2)求除数 9.指数 与 平方根 (1)指数 (2)平方根 10.附录sql脚本,可直接赋值黏贴 --求绝对值:1.1 s

python入门六 函数

定义 返回值 位置参数和关键字参数 参数传递 值传递 不可变对象 默认参数 原文地址:https://www.cnblogs.com/jing-yu/p/9105792.html

第三章 基本概念(第五部分:函数初步)

六. 函数初步 无论在哪门语言,函数都是一个相当核心的概念.通过函数可以封装任意多的语句,刻意在任何地方调用执行.函数实质上是一个短小的脚本,需要反复做一件事时,可以利用函数避免重复键入过多重复的代码.良好的编程习惯要求,先定义函数,再使用它们.定义函数用法如下: function 函数名(参数){函数代码;} 比如封装以下代码: var beatles=["Joln","Paul","George","Ringo"]; fo

10、函数

一 为何使用函数 没有函数会有什么问题? 1.无组织无结构,代码冗余2.可读性差3.无法统一管理且维护成本高 总结使用函数的好处: 1.代码重用 2.保持一致性,易维护 3.可扩展性 二 函数的分类 在python中函数分两类:内置函数,自定义函数 1 #内置函数 2 # sum 3 # max 4 # min 5 # 6 # a=len('hello') 7 # print(a) 8 # 9 # b=max([1,2,3]) 10 # print(b) 1 #自定义函数 2 3 # # ***

彻底搞定C指针-函数名与函数指针【转】

转自:http://blog.csdn.net/a1232345/article/details/43524371 函数名与函数指针 一 通常的函数调用    一个通常的函数调用的例子://自行包含头文件void MyFun(int x);    //此处的申明也可写成:void MyFun( int ); int main(int argc, char* argv[]){   MyFun(10);     //这里是调用MyFun(10);函数 return 0;} void MyFun(in