js-04-函数学习
一、什么为函数?
函数是用来执行某些特定功能的代码,为了减少代码的重复使用,将函数作为代码使用,在需要时随时调用使用。
二、函数的声明(函数名严格区分大小写)
1.function命令
function 函数名(参数变量){
函数体
return 返回值
}
2.函数表达式(采取变量赋值写法)
var function(s){
console.log(s);
};
将变量赋值与函数,构造成为函数表达式。
3.function构造函数
var add = new Function(
'x',
'y',
'return x + y'
); // 等同于
function add(x, y) {
return x + y;
}
三、函数的重复声明 (当函数重复命名时,后面的函数声明会覆盖前面的函数)
function f() {
console.log(1);
}
f()
function f() {
console.log(2);
}
f() // 2
四、圆括号运算符
function add(x, y) {
return x + y;
}
add(1, 1) // 2
return的作用:a:退出函数执行; b:返回结果,如函数无任何返回结果,则返回undefined
五、实现默认参数的形式
function example(name,age){
name=name||'德玛西亚';
age=age||18;
alert('你好!我是'+name+',今年'+age+'岁。');
}
六、可变参数形式的函数
function text1(){
var paramsNum=arguments.length;
var max=0;
for(var i=0;i<=paramsNum-1;i++){
max=arguments[i];
}
}
return max;
}
aletr(test1(123,3423,23456,6666666));
七、作用域、全局变量和局部变量
1.全局作用域:程序中的任何位置都可以访问的范围
全局变量:保存在全局作用域中,程序任何位置都可使用的变量, 可反复使用 ,只要希望随处可用的公共变量 ,只要不属于任何函数的变量,自动都是全局的,
2.函数作用域:仅函数内可用的范围
局部变量:保存在函数作用域中,仅函数内可用的变量 ,不可反复使用 ,只限于当前函数内使用,函数外不可用时局部变量有两种:1、在函数内声明的变量 2、函数的参数变量也是局部变量
3.变量使用顺序:优先使用函数内的局部变量 ,局部没有,才去全局找。
js-04-函数学习的更多相关文章
- 10-JS的函数学习
<html> <head> <title>js的函数学习</title> <meta charset="UTF-8"/> ...
- 学习js回调函数
<!DOCTYPE HTML> <html> <head> <meta charset="GBK" /> <title> ...
- Node.js系列基础学习-----回调函数,异步
Node.js基础学习 Node.js回调函数 Node.js异步编程的直接体现就是回调,异步编程依托回调来实现,但不是异步.回调函数在完成任务后就会被调用,Node有很多的回调函数,其所有的API都 ...
- 原生JS研究:学习jquery源码,收集整理常用JS函数
原生JS研究:学习jquery源码,收集整理常用JS函数: 1. JS获取原生class(getElementsByClass) 转自:http://blog.csdn.net/kongjiea/ar ...
- JS中的运算符_函数学习
js中的运算符: 算数运算符: + - * / % ++ -- 逻辑运算符: & | ! && || < > <= ...
- 《JS权威指南学习总结--第八章 函数》
内容要点: 一.JS函数是参数化的:函数的定义会包括一个称为形参的标识符列表,这些参数在函数体中像局部变量一样工作.函数调用会为形参提供实参的值.函数使用它们实参的值来计算返回值,成为该函数调用表达式 ...
- C#和TS/JS的对比学习02:函数与方法
程序本质上,就是由数据和处理数据的方法构成.函数和方法,这两个名词虽然字面不同,但意义上其实没有区别.只是因为它们出现的地方有异,给予了不同的名称,比如在全局环境中,叫函数,在对象或类中,叫方法.而C ...
- js callee,caller学习
原文地址:js callee,caller学习 /* * caller 返回一个对函数的引用,该函数调用了当前函数. * 如果函数是由顶层调用的,那么 caller包含的就是 null . * 如果在 ...
- 【09-23】js原型继承学习笔记
js原型继承学习笔记 function funcA(){ this.a="prototype a"; } var b=new funcA(); b.a="object a ...
- JS回调函数全解析教程
转自:http://blog.csdn.net/lulei9876/article/details/8494337 自学jQuery的时候,看到一英文词(Callback),顿时背部隐隐冒冷汗.迅速g ...
随机推荐
- 使用jieba分析小说太古神王中,男主更爱谁?去文章中找答案吧!#华为云·寻找黑马程序员#
欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...
- 转:Java实现敏感词过滤
敏感词.文字过滤是一个网站必不可少的功能,如何设计一个好的.高效的过滤算法是非常有必要的.前段时间我一个朋友(马上毕业,接触编程不久)要我帮他看一个文字过滤的东西,它说检索效率非常慢.我把它程序拿过来 ...
- mysql视图的基本操作
1. 创建视图 CREATE VIEW 视图名 AS 查询语句 [WITH CHECK OPTION] - 这里WITH CHECK OPTION要求插入或者更新要满足查询语句where后面的条件 2 ...
- Java修炼——键盘输入,字节转换流
键盘控制输入字符,并且有转换流(InputStreamReader)加入,同样也是使用了缓冲. package com.bjsxt.ioproject; import java.io.Buffered ...
- Spring Boot 结合Spring Data结合小项目(增,删,查,模糊查询,分页,排序)
本次做的小项目是类似于,公司发布招聘信息,因此有俩个表,一个公司表,一个招聘信息表,俩个表是一对多的关系 项目整体结构: Spring Boot和Spring Data结合的资源文件 applicat ...
- JSTL学习
基本标签: out标签:<c:out value="${表达式}" default="默认值"></c:out> 作用:结合EL表达式将 ...
- require.context批量引入文件
require.context 是什么 require.context 是由webpack内部实现,require.context在构建时,webpack 在代码中进行解析. 当需要引入文件夹内多个文 ...
- 基于iCamera测试高清摄像头SIV100B(替代ov7670)小结
基于iCamera测试高清摄像头SIV100B(替代ov7670)小结 先看看siv100b主要关键参数 SIV100B与OV7670分辨率和基本特性都差不多,而siv100b,像素尺寸更小,灵敏度更 ...
- 各大中间件底层技术-分布式一致性协议 Raft 详解
前言 正式介绍 Raft 协议之前,我们先来举个职场产研团队的一个例子
- 1篇文章搞清楚8种JVM内存溢出(OOM)的原因和解决方法
前言 撸Java的同学,多多少少会碰到内存溢出(OOM)的场景,但造成OOM的原因却是多种多样. 堆溢出 这种场景最为常见,报错信息: java.lang.OutOfMemoryError: Java ...