javascript函数
来源:互联网 发布:mac的windows支持软件 编辑:程序博客网 时间:2024/06/05 12:40
函数特性:它是真正的数据类型,可以被存储在变量,数组,对象中,也可以作为参数传递给其它函数。
创建方法:
function f(x, y) {}//函数直接量var f = function() {}
传递的参数:实参个数可以和形参个数不对等。实参个数大于形参个数,实参多的部分就会被忽略掉。传递的参数少,未赋值的参数就会被定义为undifine。
arguments[]对象(可视为数组)允许完全的读取那些实参的值。arguments.length求实参长度。同样,操作它可以改变其值。如下:
function f(x) { alert(x); arguments[0] = 1; alert(x); arguments.callee(x-1);}f(4);//注:arguments.callee用来引用当前正在执行的函数
用Object.prototype.toString.call检测参数的数据类型
var gettype = Object.prototype.toString gettype.call('aaaa') 输出 [object String] gettype.call(2222) 输出 [object Number] gettype.call(true) 输出 [object Boolean] gettype.call(undefined) 输出 [object Undefined] gettype.call(null) 输出 [object Null] gettype.call({}) 输出 [object Object] gettype.call([]) 输出 [object Array] gettype.call(function(){}) 输出 [object Function] //使用原型的方式精准判断数据类型
typeof不能区分null,对象和数组
typeof 2 输出 number typeof null 输出 object typeof {} 输出 object typeof [] 输出 object typeof (function(){}) 输出 function typeof undefined 输出 undefined typeof '222' 输出 string typeof true 输出 boolean
作用域问题
与其它语言不同的是:在javascript函数中,有函数作用域,但是没有块级作用域之分。在定义变量时建议都加上var
function test(o) { if(Object.prototype.toString.call(o) == "[object Array]") { var j = 0; for (var i = 0; i < o.length; i++) { console.log(i); } console.log(i);//i 仍然有定义,输出o.length } console.log(j); //j输出0}var arr1 = [1,2];test(arr1);
阅读全文
0 0
- javascript函数
- Javascript函数
- Javascript函数
- javascript函数
- javascript函数
- javascript函数
- JavaScript函数
- JavaScript 函数
- JavaScript 函数
- JavaScript函数
- javascript函数
- javascript函数
- javascript函数
- JavaScript 函数
- javascript函数
- javascript 函数
- javascript函数
- javascript函数
- [js高手之路]深入浅出webpack教程系列9-打包图片(file-loader)用法
- Ubuntu 安装低版本Linux内核屏幕分辨率设置问题
- c:forEache标签 List Map 遍历输出
- Linux FIFO (进程间通信,生产者消费者)
- 好的博客学习的地址【持续更新中】
- javascript函数
- UVa 202 循环小数节
- 计蒜客 Banana
- 02 Hibernate的几个类
- HDU 6201 transaction transaction transaction(SPFA算法求最长路径)
- 实现DotA的技能冷却效果
- Spring Boot入门之 HelloWorld
- Eureka的高可用实战:服务提供者、服务消费者集群之间的调用方式
- centos7安装出现license information(license not accepted)解决办法