js中的函数应用
js中的函数应用
什么是函数,函数的概念
- 函数就像一个黑匣子,里面的东西你都不知道,但是你提供一些材料放进去,他可以制造出你需要的东西;
- 可以让多个一样的功能封装组合起来,然后想执行几次就执行几次
- 函数就是另外一种形式的变量
函数的创建和执行
- 定义函数的方式
- 函数声明
function test(){ }
- 函数表达式
//命名函数表达式
var test = function abc(){ }
//匿名函数表达式
var test = function(){ }
- 函数的组成形式
function 变量名(形参){}
变量名(实参);
- 函数声明
函数的参数
- 函数的写法
//形式参数 -- 形参
function sum(a,b){
//里面写逻辑
var c = a + b;
document.write(c);
}
//实际参数 -- 实参
sum(1,2);
- 形参多实参少的情况
- 实参就是undifined;
- 实参多形参少的情况
- 实参的内容会存入arguments中
- 形参判断个数和形参判断个数
- 形参可以通过函数名.length来判断个数
- 实参可以通过arguments.length来判断个数
- 实参和arguments是映射关系,但是如果形参比实参多,多的一部分不映射
函数的返回值
- 返回值的关键字 return
- 终止函数
function sum (a,b){
console.log('a');
//如果写了return,那么后面的东西不执行,return会执行并且把里面的东西返回出去
return;
console.log('b');
}
- 返回值
function sum(){
return 123;
}
var res = sum();
- 可以将这个行数返回出来并接收到res变量之中
预解析(预编译)
函数声明整体提升
变量 声明提升
- 语义分析
- 浏览器会通篇扫描一遍
函数的作用域
++预编译的现象++
- 暗示全局变量(伪全局变量):即任何变量,如果变量未经声明就赋值,此变量就为全局所有
- e.g: a = 123;
- e.g: var a = b = 123;
- 一切声明的全局变量,全是window的属性。
- e.g: var a =123; ===> window.a=123;
- window 就是全局的域 (Global Object)
- 里面的函数的变量可以访问外面的变量
- 外面的函数变量不能访问里面的变量
js中的函数应用的更多相关文章
- JS中的函数,Array对象,for-in语句,with语句,自定义对象,Prototype
一)函数 A)JS中的函数的定义格式: function add(a,b) { var sum = a+b; document.write("两个数的和是:" + sum); // ...
- js中的函数,Date对象,Math对象和数组对象
函数就是完成某个功能的一组语句,js中的函数由关键字 function + 函数名 + 一组参数定义;函数在定义后可以被重复调用,通常将常用的功能写成一个函数,利用函数可以使代码的组织结构更多清晰. ...
- js中getByClass()函数
js中getByClass()函数进化史 对于js来说,我想每一个刚接触它的人都应该会抱怨:为什么没有一个通过class来获取元素的方法.尽管现在高版本的浏览器已经支持getElementsByCla ...
- JS中的函数、Bom、DOM及JS事件
本期博主给大家带来JS的函数.Bom.DOM操作,以及JS各种常用的数据类型的相关知识,同时,这也是JavaScript极其重要的部分,博主将详细介绍各种属性的用法和方法. 一.JS中的函数 [函数的 ...
- node.js 中回调函数callback(转载),说的很清楚,看一遍就理解了
最近在看 express,满眼看去,到处是以函数作为参数的回调函数的使用.如果这个概念理解不了,nodejs.express 的代码就会看得一塌糊涂.比如: 复制代码 代码如下: app.use(fu ...
- JS中的函数、BOM和DOM操作
一.JS中的函数 [关于注释] /** [文档注释]:开头两个*.写在函数上方,在调用函数时可以看到文档上方的描述信息. */ // 单行注释 /* 多行注释 */ 1.函数的声明及调用 (1) ...
- html css <input> javaScript .数据类型 JS中的函数编写方式 BOM总结 DOM总结
Day27 html css div 块标签. 特点: 独占一行,有高度和宽度 span 行元素. 特点:在同一行显示,当前行满了自动去下一行显示. 不识别高度和宽度 1.1.1.1 2.输入域标签 ...
- 前端之js中的函数
函数 函数就是重复执行的代码片. 函数定义与执行 <script type="text/javascript"> // 函数定义 function ...
- JS中的函数节流throttle详解和优化
JS中的函数节流throttle详解和优化在前端开发中,有时会为页面绑定resize事件,或者为一个页面元素绑定拖拽事件(mousemove),这种事件有一个特点,在一个正常的操作中,有可能在一个短的 ...
- JS中encodeURIComponent函数用php解码的代码
JS中encodeURIComponent函数给中文编码后,如何用php解码?? 前提:编码前的中文可能是gbk,gb2312,utf-8等. 复制代码 代码如下: urldecode() iconv ...
随机推荐
- 第一个----关于GPIO的总结
首先,自己本来报的是单片机的 ,但是因为队友的脑残,给我报成了嵌入式,哎,惨啊,就得从头看这个云里雾里的东西,但是没办法,都报名了 不能呢个交白卷,不然自己就是逃兵了,还有20天就比赛了 我得加 ...
- MySQL安装教程及Navicat连接MySQL报错:1251-Client does not support authentication protocol requested by server
MySQL安装可参考: MySql 8.0.18安装 此参考文章后面涉及到的密码修改,对本标题碰到的错误同样适用. 本文先讲如何安装,在讲碰到的1251问题.要直接看解决方案的朋友可以直接通过目录链接 ...
- Docker系列二: docker常用命令总结
https://docs.docker.com/reference/ 官方命令总结地址 容器生命周期管理 1.docker run 创建一个新的容器并运行一个命令 docker run [optio ...
- 关于Java中反射的总结
Java是面向对象的编程语言,万物皆对象,反射技术就是把类声明.类中的字段声明.方法声明.构造函数声明等都看成是对象,从而可以把类中的各个部分拆解出来单独处理,反射技术主要用来编写通用功能,平时编程使 ...
- COMET探索系列二【Ajax轮询复用模型】
写在前面:Ajax轮询相信大家都信手拈来在用,可是有这么一个问题,如果一个网站中同时有好多个地方需要用到这种轮询呢?就拿我们网站来说,有一个未读消息数提醒.还有一个时实时加载最新说说.昨天又加了一个全 ...
- 前端-bootstrap-长期维护
############### bootstrap简介 ################ Bootstrap是Twitter开源的基于HTML.CSS.JavaScript的前端框架. ...
- deeplearning.ai 卷积神经网络 Week 1 卷积神经网络
1. 传统的边缘检测(比如Sobel)手工设计了3*3的filter(或者叫kernel)的9个权重,在深度学习中,这9个权重都是学习出来的参数,会比手工设计的filter更好,不但可以提取90度.0 ...
- LeetCode Day 8
LeetCode0015 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组. 例如, 给 ...
- Python: Socket网络编程,多线程处理小Demo
一个简单的例子,深入研究一下socket的多线程处理任务 Server端: #!/usr/bin/env python #encoding:utf8 # # 注意:定义encoding时必须在第二行 ...
- when|nobody|hazard|lane|circuit|
How can I help them they won't listen to me? 题目解析 考查从句.此句意为:如果他们要是不听我的话,我怎么帮助他们?此处,when引导的状语从句表示假设事 ...