1.函数概念:函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块.
语法:fuction hello(){
        code...
    }
a)手动驱动:
eg: hello();
b)事件调用:
eg: 
var oCalculate = document.getElementById("calculate");
oCalculate.onclick = function(){
hello();
};
 
2.九九乘法表
    
function createProductTable(rows) {
for(var i = 1; i <= rows; i++) {
for(var j = 1; j <= i; j++) {
document.write(j + '*' + i + '=' + j * i + ' ');
}
document.write('
');
}
}
 
 
3.函数的创建方式
a)函数声明式的方式创建函数
    function funcName() {}
b)函数表达式的方式创建函数
    var funcName = function () {};
c)通过构造函数的方式创建函数
    构造函数:出现在new运算符后的函数,称为构造函数
    var funcName = new Function ();
注:声明式和表达式的区别:
1)声明式必须指定函数名.
2)表达式可以不指定函数名.
eg: (function(){})();
4.实参和形参
   
function sum(a, b) {
        alert(a + b);
    }
    sum(4, 8);
    a,b为形参4,8为实参.
 
 
注:对象中,冒号前面的数据可以称为键、下标、或者key,冒号后面的值称为值或者value
5.arguments:用来存放函数调用时传入的实参的对象(数组)。
1)概念
a)arguments 存活在函数内部(不需要我们定义,JS解析器帮我们内置该变量)
b)arguments 值类型(对象类型),包含的是实参的个数和数据.
2)作用
a)通过下标的方式获取某一个值
eg: console.log(arguments[i]);
b)通过便利的方式获取所有的值.
eg: 
for(var i = 0; i < arguments.length; i++) {
        console.log(arguments[i]);
    }
 
 
注:arguments[i]i一般是从0开始计算.i=0是代表第一个位置的数.
6.return
eg: 
function myFunction(a,b){
var c = a + b;
return c;
}
var result = myFunction(3,4);
document.write(result);
 
7.js执行的顺序
    第一步:加载第一个script代码块
    第二步:语法检查
    第三步:预解析(将var声明的变量和声明式创建的函数放到代码的最前面)
    第四步:开始正式执行代码,从上往下。
    第五步:加载第二个script代码块。
8.return 执行加减乘除
   
function $(id){
return document.getElementById(id);
}
var oFirst = $("first");
var oSecond = $("second");
var oCalculate = $("calculate");
oCalculate.onclick = function (){
var sFirst = oFirst.value;
var sSecond = oSecond.value;
var result = sort(sFirst,sSecond);//将通过计算函数所得的结果复制给变量result。此为与计算函数的链接点!
console.log(result.sum);
}

  

 
 
    重新写一个方法,主要用于计算加减乘除    
    
function sort(a,b){
var sum =Number(a)+Number(b);
var reduce = a - b ;
var product = a * b;
var divide = a / b;
return{
"sum":sum,
"reduce":reduce,
"prodect":product,
"divide":divide
};
}

  

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

(七)js函数一的更多相关文章

  1. JS函数-我调用自己试试看

    前言 最近在读<JavaScript语言精粹>,对递归函数有了进一步的认识,希望总结下来: 递归是一种强大的编程技术,他把一个问题分解为一组相似的子问题,每一问题都用一个寻常解去解决.递归 ...

  2. 【vue】vue +element 搭建项目,将js函数变成vue的函数

    demo:时间转换 1.目录 <1>在src文件夹下新建文件夹prototypefns--------在此文件夹创建util.js, <2>在prototypefns下新建文件 ...

  3. 如何编写高质量的 JS 函数(1) -- 敲山震虎篇

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/7lCK9cHmunvYlbm7Xi7JxQ作者:杨昆 一千个读者,有一千个哈姆雷特. 此系列文 ...

  4. 如何编写高质量的 JS 函数(2) -- 命名/注释/鲁棒篇

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/sd2oX0Z_cMY8_GvFg8pO4Q作者:杨昆 上篇<如何编写高质量的 JS 函数 ...

  5. 如何编写高质量的 JS 函数(3) --函数式编程[理论篇]

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/EWSqZuujHIRyx8Eb2SSidQ作者:杨昆 [编写高质量函数系列]中, <如何 ...

  6. (day65、66)Vue基础、指令、实例成员、JS函数this补充、冒泡排序

    目录 一.Vue基础 (一)什么是Vue (二)为什么学习Vue (三)如何使用Vue 二.Vue指令 (一)文本指令 (二)事件指令v-on (三)属性指令v-bind (四)表单指令v-model ...

  7. JS函数篇【2】

    什么是函数 函数的作用,可以写一次代码,然后反复地重用这个代码. <h3 onload="add2(1,2,3);add3(4,5,6)"></h3> &l ...

  8. 3.3 js函数

    1.函数语法: 函数声明的方式:function 函数名(参数1,参数2-){//函数体;}函数调用:函数名(参数1,参数2-); 函数内不一定都指定返回值. 如果需要指定返回值,可用 return ...

  9. Js函数function基础理解

    正文:我们知道,在js中,函数实际上是一个对象,每个函数都是Function类型的实例,并且都与其他引用类型一样具有属性和方法.因此,函数名实际上是指向函数对象的指针,不与某个函数绑定.在常见的两种定 ...

  10. js函数表达式和函数声明的区别

    我们已经知道,在任意代码片段外部添加包装函数,可以将内部的变量和函数定义"隐 藏"起来,外部作用域无法访问包装函数内部的任何内容. 例如: var a = 2; function ...

随机推荐

  1. java 小数转百分比

    NumberFormat percent = NumberFormat.getPercentInstance(); percent.setMaximumFractionDigits(2); //保留多 ...

  2. exports与module.exports的区别

    nodejs有自己的模块系统,分为文件模块和内置模块.webpack是运行在node环境中,在学习vue-cli的webpack配置的时候, 发现有的文件模块: exports.fun1=functi ...

  3. POJ - 2226 Muddy Fields (最小顶点覆盖)

    *.*. .*** ***. ..*. 题意:有一个N*M的像素图,现在问最少能用几块1*k的木条覆盖所有的 * 点,k为>=1的任意值. 分析:和小行星那题很像.小行星那题是将一整行(列)看作 ...

  4. $ git学习总结系列(3)——分支管理

    本文主要介绍git分支的概念及常用分支操作. 分支的概念 所谓分支,可以理解成一个个相互独立的工作空间,在每一个分支上的改动不会影响到其他分支的代码.git默认的分支是master分支. 试想一下这样 ...

  5. Python3.x:Linux下安装python3.6

    Python3.x:Linux下安装python3.6 下载 #先进入download文件夹 cd /home/download #输入命令(下载到当前目录) wget https://www.pyt ...

  6. Spring框架下Junit测试

    Spring框架下Junit测试 一.设置 1.1 目录 设置源码目录和测试目录,这样在设置产生测试方法时,会统一放到一个目录,如果没有设置测试目录,则不会产生测试代码. 1.2 增加配置文件 Res ...

  7. DATASTAGE中ODBC连接的配置

    修改2个配置文件: cat /mistel/IBM/InformationServer/Server/DSEngine/.odbc.ini cat /mistel/IBM/InformationSer ...

  8. xml的servlet配置

    内容如下 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="ht ...

  9. java 实现JSON数据格式化

    关键在于好的算法这个代码来源于网络,算法已在注释中添加. 工具地址: 链接:https://pan.baidu.com/s/1Ns3cqi0SG3qSqatrZBrl4A 提取码:2enp 复制这段内 ...

  10. secureCRT7.3.4的破解与安装

    1-9为 SecureCRT 7.3.4 安装图解:10-13是 SecureCRT 7.3.4 破解图解,心急的朋友可以直接向下拉. 以下是百度百科对 SecureCRT 的介绍: SecureCR ...