博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript高级程序设计之函数
阅读量:4310 次
发布时间:2019-06-06

本文共 1271 字,大约阅读时间需要 4 分钟。

函数实际上是对象,每个函数都是Function类型的实例。

函数是引用类型。

函数名实际上是一个指向函数对象的指针,不会与某个函数绑定。

// 这种写法更能表达函数的本质var sum = function(num1, num2) {    return num1 + num2;};var anotherSum = sum;sum = null;console.log(anotherSum(10, 20));  // 30console.log(sum(10, 20));  // typeerror: sum is not a function

没有重载

function add(num) {    return num + 100;}function add(num) {    return num + 200;}var result = add(100);  // 300// 上面的代码和下面的代码没有什么区别var add = function(num) {    return num + 100;};add = function(num) {    return num + 200;};

那函数声明的意义?

// 这段代码是可执行的,因为解析器在向执行环境加载数据时,// 函数声明会被提升到顶部。而变量的声明提升状态为undefinedconsole.log(sum(100, 200));  // 300console.log(anotherSum);  // undefinedfunction sum(num1, num2) {    return num1 + num2;}var anotherSum = function(num1, num2) {    return num1 + num2;};

函数的属性和方法

// 示例函数var color = "blue",    obj = {        color: "red"    };function sayColor() {    return this.color;}// ECMAScript5的方法,返回一个绑定了this指针的函数var objSayColor = sayColor.bind(obj);console.log(sayColor.length);  // 参数的个数console.log(sayColor.prototype);  // sayColor {}  原型对象console.log(sayColor.apply(obj, []));  // redconsole.log(sayColor.call(obj, "pink", "yellow"));  // redconsole.log(objSayColor());  // redconsole.log(sayColor());  // blue

 

转载于:https://www.cnblogs.com/xiankui/p/3755197.html

你可能感兴趣的文章
Java中关键词之this,super的使用
查看>>
人工智能暑期课程实践项目——智能家居控制(一)
查看>>
前端数据可视化插件(二)图谱
查看>>
kafka web端管理工具 kafka-manager【转发】
查看>>
获取控制台窗口句柄GetConsoleWindow
查看>>
Linux下Qt+CUDA调试并运行
查看>>
3.1.1;例3-1
查看>>
BZOJ4066: 简单题
查看>>
用户添加修改文件的操作
查看>>
C# 2015关键字
查看>>
PostgreSQL 数据库备份
查看>>
Binder
查看>>
RabbitMQ 在Linux环境中的默认位置
查看>>
Xcode找Library位置
查看>>
[P1121]环状最大两段子段和
查看>>
操作数据库出现InvalidOpertionException(内部连接致命错误)
查看>>
深入ASP.NET数据绑定(中)——数据双向绑定机理
查看>>
Toolbar使用
查看>>
mysql优化
查看>>
线程的几种创建方式
查看>>