JavaScript系列从入门到精通系列第十四篇:JavaScript中函数的简介以及函数的声明方式以及函数的调用

文章目录

一:函数的简介

1:概念和简介

2:创建一个函数对象

3:调用函数对象

4:函数对象的普通功能

5:使用函数声明来创建一个函数对象

6:使用函数声明创建一个匿名函数 


 

一:函数的简介

1:概念和简介

        函数也是一个对象,在JS中除了基本数据类型都是对象。console是一个对象,document也是一个也对象,网页上我们能看到的任何东西都是都是一个对象。

        函数也是一个对象,他和普通的对象的区别在哪?函数这个对象不仅仅是一个容器,可以执行一些功能。

       函数及时将这样相同的功能的代码封装起来,一次编写到处调用。

2:创建一个函数对象

       这样做就是封装了一个方法对象。

var fun = new Fuction();
console.log(typeOf fun);

        可以将要封装的代码以字符串的方式传递给我们的构造函数:

var fun = new Fuction("console.log('hello 这是我的第一个函数')");
console.log(fun);

        封装到函数中的代码不会被立即执行,仅仅是将功能放进去了,需要调用才会执行。

        这种将代码传递给构造函数的方式是极其少用的,使用构造函数创建仅仅是为了理解函数也是一个对象。

3:调用函数对象

var fun = new Fuction("console.log('hello 这是我的第一个函数')");
fun();

        调用几次,执行几次。 

4:函数对象的普通功能

var fun = new Fuction("console.log('hello 这是我的第一个函数')");
fun.name = '李白';
console.log(fun.name);//李白

        函数对象包含普通对象的全部功能,我们设置可以在函数对象里边添加属性。只不过比普通对象更加强大。 

5:使用函数声明来创建一个函数对象

function 函数名(形参1,形参2,形参3){功能语句....
}

 

6:使用函数声明创建一个匿名函数 

function(){console.log("我是匿名函数中封装的代码");
}

        这样写是有问题的,单纯的一个匿名函数是没有办法使用的。可以这样:

var fun = function(){console.log("我是匿名函数中封装的代码");
}

        总结:创建函数对象的三种方式:

        1:使用构造函数创建函数对象

        2:使用函数声明创建对象

        3:使用函数声明创建匿名函数对象赋值给变量

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/148292.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

tiny模式基本原理整合

【Tiny模式】的基本构成 M【首头在首位】 U【/】 V【HTTP/】 Host H【真实ip】 XH \r回车 \n换行 \t制表 \ 空格 一个基本的模式构成 [method] [uri] [version]\r\nHost: [host]\r\n[method] [uri] [version]\r\nHost: [host]\r\n 检测顺序 http M H XH 有些地区 XH H M 我这边…

MySQL - mysql服务基本操作以及基本SQL语句与函数

文章目录 操作mysql客户端与 mysql 服务之间的小九九了解 mysql 基本 SQL 语句语法书写规范SQL分类DDL库表查增 mysql数据类型数值类型字符类型日期类型 示例修改(表操作) DML添加数据删除数据修改数据 DQL查询多个字段条件查询聚合函数分组查询排序查询…

python模拟表格任意输入位置

在表格里输入数值,要任意位置,我找到了好方法: input输入 1. 行 2. 列输入:1 excel每行输入文字input输入位置 3.2 表示输入位置在:3行个列是要实现一个类似于 Excel 表格的输入功能,并且希望能够指定输入…

oracle GBK未定义编码使用Unicode写入特殊字符e000迁移lightdb-x测试

E:\HS\LightDBSVN\23.3sql文件\迁移工具\caofa\config\application.properties gbk-->uft8: logging.configclasspath:log4j2.xml # ???? etl.global.sourceDatabaseoracle etl.global.targetDatabaselightdb etl.global.showSqlfalse etl.global.fastFailfalse etl.g…

数据结构之双链表

双链表 1.复杂方法的图分析2.My_LinkedList代码3.接口MY_lIST4.测试类 1.复杂方法的图分析 2.My_LinkedList代码 package My_liNKEDlIST;public class My_LinkedList implements MY_lIST{static class ListNode{public int val;public ListNode prev;public ListNode next;pub…

git 分支管理进阶

目录 1. merge 命令:git merge A 2. rebase 命令:git rebase A 命令:git rebase B A 3. 指针——分支切换 3.1哈希值方式 3.2相对引用 3.3综合练习 4.撤销 4.1 本地分支 reset 4.2 远程分支 revert 5.Cherry-pick与交互式的 …

十天学完基础数据结构-第三天(数组(Array))

数组的基本概念 数组是一种线性数据结构,用于存储相同数据类型的元素。它具有以下基本概念: 元素:数组中的每个数据项称为元素,可以是整数、浮点数、字符等。 索引:每个元素在数组中都有一个唯一的位置,称…

Linux--socket编程

socket套接字编程 一、服务器和客户端的开发步骤: 1、创建套接字 2、为套接字添加信息(ip地址和端口号) 3、监听网络连接 4、监听到有客户端接入,接受连接(如没有接入,会发生阻塞到) 5、数据…

flink处理函数--副输出功能

背景 在flink中,如果你想要访问记录的处理时间或者事件时间,注册定时器,或者是将记录输出到多个输出流中,你都需要处理函数的帮助,本文就来通过一个例子来讲解下副输出 副输出 本文还是基于streaming-with-flink这本…

概率密度函数,概率分布函数

概率密度函数:描述信号的取值在某个确定的取值点附近的概率的函数;概率分布函数的导数。 以幅值大小为横坐标,以每个幅值间隔内出现的概率为纵坐标进行统计分析。反映了信号落在不同幅值强度区域内的概率情况。 直方图:对每个幅…

数据结构--队列与循环队列的实现

数据结构–队列的实现 1.队列的定义 比如有一个人叫做张三,这天他要去医院看病,看病时就需要先挂号,由于他来的比较晚,所以他的号码就比较大,来的比较早的号码就比较小,需要到就诊窗口从小号到大依次排队,前面的小号就诊结束之后,才会轮到大号来,小号每就诊完毕就销毁,每新来…

基于Java的火车高铁订票购票系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…

支持向量机SVM:从数学原理到实际应用

目录 一、引言背景SVM算法的重要性 二、SVM基础线性分类器简介什么是支持向量?超平面和决策边界SVM的目标函数 三、数学背景和优化拉格朗日乘子法(Lagrange Multipliers)KKT条件核技巧(Kernel Trick)双重问题和主问题&…

【云备份】

文章目录 [toc] 1 :peach:云备份的认识:peach:1.1 :apple:功能了解:apple:1.2 :apple:实现目标:apple:1.3 :apple:服务端程序负责功能:apple:1.4 :apple:服务端功能模块划分:apple:1.5 :apple:客户端程序负责功能:apple:1.6 :apple:客户端功能模块划分:apple: 2 :peach:环境搭建…

留住时光、固化时间、让一瞬成为永恒——全新的真人手办定制模式,就选易模小程序制作。

如何能永远留住一瞬间? 有人说我可以拍摄一张照片,照片的问世确实给生活中许多美好的瞬间留下了可以记录的工具。但是随着时间的流逝,照片终究也会泛黄,似乎有一些记忆的温度,有一些岁月的棱角,也是照片所给…

SD卡格式化怎么恢复?

随着智能手机、平板电脑、数码相机和行车记录仪等各种移动电子设备走入千家万户,SD卡作为与这些设备相配套的存储介质,也随之获得了广泛的市场认可。SD卡因其体积小巧、容量庞大、读写速度高及与多种设备兼容的优点,逐渐成为日常工作和生活中…

怒刷LeetCode的第23天(Java版)

目录 第一题 题目来源 题目内容 解决方法 方法一:贪心算法 方法二:动态规划 方法三:回溯算法 方法四:并查集 第二题 题目来源 题目内容 解决方法 方法一:排序和遍历 方法二:扫描线算法 方法…

StarRocks数据导入

1、相关环境 Flink作为当前流行的流式计算框架,在对接StarRocks时,若直接使用JDBC的方式"流式"写入数据,对StarRocks是不友好的,StarRocks作为一款MVCC的数据库,其导入的核心思想还是"攒微批降频率&qu…

HTTP协议,请求响应

、概述 二、HTTP请求协议 三、HTTP响应协议 四、请求数据 1.简单实体参数 RequestMapping("/simpleParam")public String simpleParam(RequestParam(name "name" ,required false ) String username, Integer age){System.out.println (username "…