JS基础学习04

15. 冒泡排序

定义:冒泡排序就是讲数据从大到小或者从小到大排列的一种算法。

方法:通过循环语句来实现,具体实现方式为:逐个将数组中的值,依次和其后面的值进行比较,如果比较的结果满足一定的要求的话,则两者进行两两交换,直至循环结束完成排序。如:

冒泡排序,从小到大    [65,97,76,13,27,49,58]

var arr = [65,97,76,13,27,49,58,1,12,26];
    var m ;

//方法一:
    for(var i = arr.length-1; i > 0;i--){
        for(var j = 0;j < i;j++){
            if(arr[j] > arr[j+1]){
                m = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = m;
            }
        }
    }
    console.log(arr);
    //方法二:
    for(var i = 0;i<arr.length-1;i++){
        for(var j = 0;j<arr.length-1-i;j++){
            if(arr[j] > arr[j+1]){
                m = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = m;
            }
        }
    }
    console.log(arr);

16. 函数

16.1 什么是函数

函数其实就是一段代码,一段被调用的时候执行,并且可以重复使用的代码块。

作用:把可以重用的代码提取成函数,把不可重用的部分当成参数传入函数。

函数的定义:(共有两种定义函数方式,暂时先说明其中一种)

使用函数声明的方式定义函数:

function 函数名(参数){

  函数体(需要执行的代码块);

  返回值;

}

函数声明以后,函数本身不会自动执行,需要我们通过“函数名()”的方法来进行调用。

函数的优势:一次声明或是定义,可以被重复调用。

16.2 函数的组成

函数的三要素:函数名、参数、返回值。

函数名:函数名的命名一般是一个动词,代表函数的功能。

参数:参数不是必须的,函数可以无参数。

返回值:返回值是每个函数都会有的,但是如果函数没有明确返回值的话,默认返回值是undefined。

函数的执行过程:我们通过“函数名()”的方法调用函数,函数将会将我们给的实参值赋值给函数中对应的形参(如果函数有参数要求的话),然后逐条执行函数内的语句,将执行完成后的结果返回给我们。其中我们提供给函数的数据就是参数,而函数最后返回给我们的数据就是返回值。

16.3 形参和实参的关系

形参:

如:function getSum(a,b,c){}, 在函数定义的时候,使用的参数叫做形参,起占位置和在函数内使用的作用。

实参:

如:getSum(10,20),在函数真正的调用的时候,传入的数据叫实参。

两者的关系:在JS中实参和形参的个数是可以不一样的。

16.4 ruturn的用法

在函数当中,return一般是用于返回函数当中的数据,如果return后面跟着数据,则返回后面的数据;如果return后面没有数据的话,则返回undefined。并且程序运行完return语句后,会立即跳出当前函数,后面的代码不在执行。

如:

function getSum(a,b){
    a = 100;
    return  a + b ; //将计算后的结果用关键字return返回出去
    console.log("看我执行了没有。。。。"); // return语句后直接跳出函数,后面的代码不再执行。
}
var num = getSum(a,b);

16.5 函数的嵌套

函数的嵌套就是在一个函数中调用其他函数,而在这时语句执行的顺序严格按照从上而下逐条执行的原则执行。如:

function f1(){

console.log("这是函数f1");

}

function f2(){

console.log("这是函数f2");

f1();

console.log("这是函数f2");

}

f2();

显示结果为:

这是函数f2

这是函数f1

这是函数f2

函数f2()被调用时,先执行f2()中的第一条语句console.log("这是函数f2");,再执行第二句f1();,就是调用f1()函数,这时会跳转至f1()函数,执行f1()函数中的语句console.log("这是函数f1");,f1()函数执行完成后,重新回到刚才f2()函数,从调用f1()函数的下一条语句开始继续执行,直至f2()函数执行完成。

时间: 2024-10-25 14:12:26

JS基础学习04的相关文章

js基础学习笔记(二)

2.1  输出内容(document.write) document.write() 可用于直接向 HTML 输出流写内容.简单的说就是直接在网页中输出内容. 第一种:输出内容用“”括起,直接输出""号内的内容. <script type="text/javascript"> document.write("I love JavaScript!"); //内容用""括起来,""里的内容直接输出.

js基础学习笔记(一)

* 在js编写过程中,尽量保持统一使用单引号 'XXXX': * 所有变量都要声明 var,避免全局函数调用的冲突: 1.1    输出内容 docment.write(‘aileLi’); 改变某ID元素样式 docment.getElementById(‘ID’).style.color=’样式参数’; 1.2   输出弹出框 alert(‘aileLi’); 1.5  什么是变量?  从字面上看,变量是可变的量: 从编程角度讲,变量是用于存储某种/某些数值的存储器. 定义变量使用关键字va

js基础学习笔记(三)

3.1 认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面代码: 将HTML代码分解为DOM节点层次图: HTML文档可以说由节点构成的集合,三种常见的DOM节点: 1. 元素节点:上图中<html>.<body>.<p>等都是元素节点,即标签. 2. 文本节点:向用户展示的内容,如<li>...</li&g

JS 基础学习整理

心得:   很多人都说JS的话其实是挺难的,但是也是很重要的,这句话其实一点都没错,就像这几天学习的js基础,刚开始基本学的就是一个框架和简单的算法思想就已经抬升了很大的一个难度阶级,对像我这类数学思维不是很好的人来说,其实就更是一个挑战了,但是,没有谁生来就会的,虽然我们的算法思维不是很好,但是,希望能在更多的练习中找到这种题型的解决方式,别人敲三道,我们可以敲五道,只希望在更多的练习中去克服这个难点,慢慢的去培养这种算法思想. 就这前面三天学的JS课程来说,其实比较难的也就是循环,很多时候怎

JS 基础学习随想

2012年就已经接触过了js,给我的印象:这是一门谈不上复杂的语言.大概这就是所谓的学的越浅,用的越少,觉得自己会的东西好像得更多吧!开始做基础练习题的时候觉得好像都十分简单.可是后来在做到对象数组的部分还是遇到了问题,接着发现自己其实并不非常了解js.首先来说说我在codefordream基础学习的情况吧 基础部分主要学习的有:注释符号,数据类型,算数运算,逻辑术语,判断语句,循环语句,及function. 简单的可以说说的是,由于长期使用其他语言的原因,js对于数组的遍历其实有一点区别: 最

Vue.js 基础学习 v-on 指令

在前面的基础学习中已经写了v-for和v-bind两个指令 今天学习v-on指令 v-on指令:用来绑定事件的body中 <div id="app"> </div> script中 var app = new Vue({ el : '#app', methods : { } }) 在div app中加入一个button并绑定一个点击事件 <button v-on:click="onClick">点我</button>

Vue.js 基础学习

今天我开始了Vue.js 的学习. 那么什么是Vue.js 呢? Vue.js是一套开发Web页面的JavaScript脚本框架.听起来感觉很难,不过据说,Vue.js是Web-Javascript脚本框架中最容易上手的框架.所以我便选择了先来学习这个. 要学习Vue.js首先就要获取库文件了,在网上有很多地方可以找到,我是在bootcdn上找到的 接下来我们通过Vue输出一串Hello World ! 首先引入vue. <script src="https://cdn.bootcss.c

JS基础学习08

今天主要学习到的是对象的概念及对象的创建. 22. 基本包装类型 昨天在学习JS中内置的对象时,字符串作为基本数据类型也具备对象的属性和方法,这里就是讲字符串变成了基本包装类型. 而在基本包装类型调用时会经过以下几个步骤: 1 先生成一个临时的基本包装类型的对象,var temp = new String(); 2 使用这个临时创建的对象,调用临时对象的属性和方法. 3 调用完毕之后,立即消毁,temp = null; 通过上面的三个步骤使字符串具备了对象的属性和方法. 23. 对象的概念和作用

JS基础学习(一)

JavaScript概述 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEase.(客户端执行的语言) Netscape(网景)接收Nombas的理念,(Brendan Eich)在其Netscape Navigator 2.0产品中开发出一套livescript的脚本语言.Sun和Netscape共同完成.后改名叫Javascript 微软随后模仿在其IE3.0的产品中搭载了一个