JavaScript函数使用知识点回顾
JS函数本质更像一个对象,有属性和方法。
将函数定义作为对象的属性,则称之为对象方法;函数如果用于创建新的对象,则称之为对象的构造函数。
(1)JS使用关键字 function 定义函数。
函数可以通过声明定义,也可以是一个表达式。
function functionName( parameters){
//函数体,执行的代码
//函数体内的可执行语句以分号间隔
}
函数的声明语句不是可执行语句,所以不需要以分号结束。
函数只有在调用的时候才会执行。
函数表达式可以存储在变量中,该变量可以作为一个函数使用。这种情况的函数被称为 匿名函数 没有函数名称。
var x = function ( a,b ){ return a + b};
var z = x ( 4,3 );
(2)JS中还可以使用自带的函数构造器 Function( ) 进行定义。
var myFunction = new Function("a" , "b", "return a*b");
//构造函数中myFunction是对象形式
var x = myFunction(4,3);
在JS中很多时候需要尽量避免使用关键字 new ,上面的实例可以不适用构造函数,直接写成以下形式
var myFunction = function(a,b){ return a*b };
var x = myFunction(4,3);
函数提升:
提升是JS默认将当前作用域提升到前面去的行为,应用在变量的声明和函数的声明。因此函数可以在声明之前调用。(使用表达式定义函数时无法进行提升,作用域被表达式中的变量限定了)
myFunction(5);
function myFunction(y){
return y * y;
}
自调用函数:
函数表达式后跟 () ,则函数会自动调用。但是函数内的参数不能自调用声明的函数,一定要把这个和递归区分开。
(function (){
var x = "hello"; //我将调用自己
})(); //通过添加括号来说明这是一个函数表达式 (函数声明)()
有返回值的函数通常都可以当作一个值用于赋值或运算表达式中。
JavaScript函数使用知识点回顾的更多相关文章
- 私人定制javascript中函数小知识点
函数的定义 首先在javascript中,函数就是对象,程序可以随意操控它们.比如,可以给它们设置属性,甚至调用它们的方法.函数使用function关键字来定义.它既可以用在函数定义表达式,也可以用在 ...
- JavaScript正则表达式及jQuery回顾
JavaScript 正则表达式,用于规定在文本中检索的内容. 一.定义正则表达式: rep = /\d+/; // js定义正则.(python定义正则:re模块 rep = "\d+&q ...
- javascript数组的知识点讲解
javascript数组的知识点讲解 阅读目录 数组的基本方法如下 concat() join() pop() push() reverse() shift() sort() splice() toS ...
- JavaScript语言基础知识点图示(转)
一位牛人归纳的JavaScript 语言基础知识点图示. 1.JavaScript 数据类型 2.JavaScript 变量 3.Javascript 运算符 4.JavaScript 数组 5.Ja ...
- JavaScript语言基础知识点图示
原文:JavaScript语言基础知识点图示 一位牛人归纳的JavaScript 语言基础知识点图示. 1.JavaScript 数据类型 2.JavaScript 变量 3.Javascript 运 ...
- JavaScript函数之作用域 / 作用链域 / 预解析
关于作用域和作用链域的问题,很多文章讲的都很详细,本文属于摘录自己觉得对自己有价值的部分,留由后用,仅供参考,需要查看详细信息请点击我给出的原文链接查看原文件 做一个有爱的搬运工~~ -------- ...
- Java进阶(二十六)公司项目开发知识点回顾
公司项目开发知识点回顾 前言 "拿来主义"在某些时候并不是最佳选择,尤其是当自己遇到问题的时候,毫无头绪. 在一次实验过程中,需要实现数据库的CRUD操作.由于之前项目开发过程中, ...
- 浅谈JavaScript 函数作用域当中的“提升”现象
在JavaScript当中,定义变量通过var操作符+变量名.但是不加 var 操作符,直接赋值也是可以的. 例如 : message = "hello JavaScript ! " ...
- $Django Rest Framework-认证组件,权限组件 知识点回顾choices,on_delete
一 小知识点回顾 #orm class UserInfo (models.Model): id = models.AutoField (primary_key=True) name = models. ...
随机推荐
- (九)不安全的HTTP方法
01 漏洞描述 <HTTP | HTTP报文>中介绍了HTTP的请求方法.在这些方法中,HTTP定义了一组被称为安全方法的方法:GET.HEAD.OPTIONS.TRACE,这些方法不会产 ...
- 你是项目经理了![IT项目经理成长晋升记1]
凉爽的秋风,吹走了严热的夏季,K公司内部传来一个重磅消息.销售团队披荆斩棘,过三关斩六将,成功胜出,拿下公司在C省的首单,为C省市场的开拓打下了基础. K公司是2003年“非典”时期成立,坐落在美丽的 ...
- 算法讲堂二:组合数学 & 概率期望DP
组合数学 1. 排列组合 1. 加法原理 完成一列事的方法有 n 类,其中第 i 类方法包括\(a_i\)种不同的方法,且这些方法互不重合,则完成这件事共有 \(a_1 + a_2 + \cdots ...
- tensorflow2.0学习笔记第二章第四节
2.4损失函数损失函数(loss):预测值(y)与已知答案(y_)的差距 nn优化目标:loss最小->-mse -自定义 -ce(cross entropy)均方误差mse:MSE(y_,y) ...
- Php-webdriver 的安装与使用教程
Php-webdriver 是 Facebook 开发的基于 PHP 语言实现的 Selenium WebDriver 客户端组件,可以用它来操作浏览器.常见的操作包括:自动化测试.采集数据等. 安装 ...
- MySQL索引实践
数据库索引本质上是一种数据结构(存储结构+算法),目的是为了加快数据检索速度. 1.索引的类型(待完善) 主键索引:给表设置主键,这个表就拥有主键索引. 唯一索引:unique 普通索引:增加某个字段 ...
- CSS3如何实现div闪烁效果
效果: Html: <h1 class="blink">花花世界</h1> Css: @keyframes fade { from { opacity: 1 ...
- Looooops(求解同余方程、同余方程用法)【拓展欧几里得】
Looooops(点击) A Compiler Mystery: We are given a C-language style for loop of type for (variable = A; ...
- TensorFlow从0到1之TensorFlow csv文件读取数据(14)
大多数人了解 Pandas 及其在处理大数据文件方面的实用性.TensorFlow 提供了读取这种文件的方法. 前面章节中,介绍了如何在 TensorFlow 中读取文件,本节将重点介绍如何从 CSV ...
- (一)JavaMail发送简单邮件
1,导入依赖 <dependency> <groupId>com.sun.mail</groupId> <artifactId>jakarta.mail ...