js中argument

argument

说明:

  在JavaScript中,arguments是对象的一个特殊属性。arguments对象就像数组,但是它却不是数组。

属性:

  length, 获取arguments对象的长度。

  callee, 引用当前正在执行的函数。

编辑本段举例:

1.参数的长度

  window.onload = function(){

  abc(1,2,3);

  }

  function abc(){

  //虽然这里没有引用参数,但是arguments仍能捕获到

  alert(arguments.length);

  }//output 3

2.隐藏的参数

  function abc(x,y){

  alert(x+","+y);

  for(var i=0;i<=arguments.length;i+=){

  alert(" "+arguments[i]);

  }

  }//output: 1,2

  1 2 3

3.改变参数值

  function abc(x,y,z){

  arguments[2] = "hello";

  for(var i=0;i<=arguments.length;i+=){

  alert(" "+arguments[i]);

  }

  }//output: 1 2 hello

4.递归

  求1到n的自然数之和

  function add(x){

  if(x == 1) return 1;

  else return n + arguments.callee(n-1);

  }

  其实callee对于没有命名的函数调用自身时就是一个福音了,比如对于没有命名的函数求1到n自然数之和

  var result = function(x){

  if(x == 1) return 1;

  return x+arguments.callee(x-1);

  }

时间: 2024-11-25 16:21:08

js中argument的相关文章

用简单的方法实现js中日期的加减法

今天就算对JS中日期的加减法做个总结,一共两步 第一步,引入date.format.js,这个JS的作用是将日期转为指定的格式,代码如下 var dateFormat = function () {     var    token = /d{1,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|[LloSZ]|"[^"]*"|'[^']*'/g,         timezone = /\b(?:[PMCEA][SDP]T|(?:Pacific|Mount

js中的函数function

js的function对象在调用过程中具有一个arguments的属性,它是由脚本解释器创建的(这也是arguments创建的唯一方式).arguments属性可以看作是一个Array对象,它有length属性,可以通过序号访问每一个参数,而且通过argument的callee属性可以获取对正在执行的Function对象的引用.如下: function factorial(n){ if(n<=n){ return 1; }else{ return n*arguments.callee(n-1);

JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象

   前   言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学,经过初步的学习,会对这一门语言有了一定深入的了解,也会感受到这一门语言的强大之处.希望各位同学通过一定的学习,会得到等大的收获. 因为是最后一篇所以内容可能有点多,希望各位同学能够慢慢看,细细看,让我们一起学习,一起进步,一起感受JS的魅力. 一函数 函数的声明及调用 1.函数的声明格式: func

在JS中,一切东东其实都是对象

对象是组成JavaScript的基本单元,在JS中,一切东东其实都是对象,而且功能非常强大,它不仅风格独特,功能也与众不同. 一.引用(reference) 引用的概念是JS的基础之一,它是指向对象实际位置的指针.见下面的例子: var items = new Array("abc","def","hig"); //创建此数组的引用 var Ref = items; items.push("klm"); alert(Ref.l

JS中的函数和BOM

文档注释:开头两个*.写在函数上方,在调用函数时, 可以看到文档中的描述信息: function aaa(){ } [函数的声明及调用] 1.函数的声明格式: function 函数名(参数1,参数2,..){ // 函数体代码 return 返回值: } 函数的调用: ① 直接调用:函数名(参数1的值,参数2的值,..); ② 事件调用:在HTML标签中,使用事件名="函数名()" <button onclick="saySth('hhh','red')"&

js中的数据类型和判断数据类型

基本数据类型,六大基本数据类型:字符串(String).数字(Number).布尔(Boolean).对象(Object).空(Null).未定义(Undefined). 1,字符串:string,单引号或者双引号号起来的,就是字符串. 2,数字(Number),数字类型,包括浮是点数整数等. 3,布尔(Boolean),false,true. 4,未定义(undefined),未定义,当一个变量未创建或者创建未赋值的时候就是undefined. 5,空(Null),不存在,dom节点不存在,返

JS中令人发指的valueOf方法介绍

彭老湿近期月报里提到了valueOf方法,兴致来了翻了下ECMA5里关于valueOf方法的介绍,如下: 15.2.4.4 Object.prototype.valueOf ( ) When the valueOf method is called, the following steps are taken: 1. Let O be the result of calling ToObject passing the this value as the argument. 2. If O is

JS中错误处理

1 错误类型 1. Error 是基本类型 其他错误都继承该类型 2. EvalError 使用eval()函数时发生异常 3. RangeError 4. ReferenceError 找不到对象的情况下(导致object expected ),访问不存在的对象的时发生 5. SyntaxError 语法错误 6. TypeError 变量中保存着意外类型,或者在访问不存在的方法时 7. URLError try { someFunction(); } catch (error) { if (

关于js中的回调函数callback,通俗易懂

前言 其实我一直很困惑关于js 中的callback,困惑的原因是,学习中这块看的资料少,但是平时又经常见,偶尔复制一下前人代码,功能实现了也就不再去追其原由,这么着,这个callback的概念就越来越混乱,因为你总感觉它是你Ajax请求后调用的那个函数,又感觉它是你某一个函数中的形参而已,而当你有一天看到一点关于Node.js的代码后你会更加崩溃,因为你会发现很多的callback,但是这么着下去肯定是不行的,因为很多的东西如果只是知道概念和理论,没有实践出结果,没有思考和感受,这些东西永远不