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. Spring中的定时调度(Scheduling)和线程池(Thread Pooling)

    使用triggers和SchedulerFactoryBean来包装任务 我们已经创建了job details,jobs.我们同时回顾了允许你调用特定对象上某一个方法的便捷的bean. 当然我们仍需要 ...

  2. CF961G Partitions(第二类斯特林数)

    题目 CF961G 前置 斯特林数\(\Longrightarrow\)斯特林数及反演总结 做法 相信大家能得出一个一眼式:\[Ans=\sum\limits_{i=1}^n w_i\sum\limi ...

  3. Mybatis导入原生配置文件

    在Spring-Mybatis中导入Mybatis原生配置文件 在sqlSessionFactory Bean中设置设置configLocation属性 <property name=" ...

  4. LeetCode——Diameter of Binary Tree

    LeetCode--Diameter of Binary Tree Question Given a binary tree, you need to compute the length of th ...

  5. Linux 利用管道父子进程间传递数据

    [原文] fork()函数:用于创建子进程,子进程完全复制父进程的资源,相当于父进程的拷贝.具体理解,运用父进程的同一套代码,通过判断进程ID来执行不同进程的不同任务. 返回值正常为子进程ID,出错返 ...

  6. SQL优化器执行过程之逻辑算子

    我们提到了两种SQL优化器,分别是RBO和CBO.那么无论是RBO,还是CBO都包含了一系列优化规则,这些优化规则可以对关系表达式进行等价转换,从而寻找最优的执行计划. 那么常见的优化规则就包括: 列 ...

  7. mybatis报错 Error instantiating interface com.atguigu.mybatis.dao.DepartmentMapper with invalid types () or values ()

    mybatis报错 Error instantiating interface com.atguigu.mybatis.dao.DepartmentMapper with invalid types ...

  8. 入门教程:.NET开源OpenID Connect 和OAuth解决方案IdentityServer v3 介绍 (一)

    现代的应用程序看起来像这样: 典型的交互操作包括: 浏览器与 web 应用程序进行通信 Web 应用程序与 web Api (有时是在他们自己的有时代表用户) 通信 基于浏览器的应用程序与 web A ...

  9. 《JavaScript高级程序设计》第6章补充 继承

    基于原型链继承 将父类的实例赋给子类的prototype来实现继承. 原理:父类的实例有父类所有的实例属性和原型方法,将它赋给子类的prototype后,子类的创建的实例就有会__proto__属性指 ...

  10. SeekBar拖动条控件

    SeekBar拖动条控件 一.简介 1. 二.SeekBar拖动条控件使用方法 1.创建SeekBar控件 <SeekBar android:id="@+id/SeekBar1&quo ...