函数的概念(积木):
把完成特定功能的代码,独立起来,起个名字
函数分类:
1、官方函数,只需要调用。
2、自定义函数;
函数的特点(优点):
1、模块化编程
2、代码的复用性。
3、提高工作效率(编码和维护)。
1、定义一个函数
function testf(data){ // data指得是参数
...
return '返回值';
}
注:
参数:已知条件
返回值:结果
冒泡
冒泡排序,相邻两个数进行比较,如果前一个大于后一个,那么进行交换
封装函数
函数:
功能:冒泡排序
参数:已知一个可能没有顺序的数组
返回值:排好序的数组
function bubbleSort(arr){
for(var i = 0; i < arr.length - 1; i++){
for(var j = 0; j < arr.length - 1 - i; j++){
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
return arr;
}
选择法:
1)从一组数中找出最小的数(选择),放在最前面(放在第一个位置)
2)从剩下的数中找最小的数,放在最前面(放在第二个位置)
function testf (arr) {
for(var i = 0; i < arr.length - 1; i++){
var min = arr[0];
var minIndex = i; // 记录最小数的下标
for(var j = i + 1; j < length; j++) {
if(arr[j] < min) {
minIndex = j;
min = arr[j];
}
}
var temp = arr[minIndex];
arr[minIndex] = arr[i];
arr[i] = temp;
}
return arr;
}
JSON对象
基本类型的数据没法去描述时,就需要使用json
例如:
var book = {
"name": "三国",
"zuozhe": "罗贯中",
"price": 50.1
};
使用json对象的属性时,有两种方式
1、点的方式(大部分情况使用点)
console.log(book.name);
console.log(book.price);
2、方括号的方式
console.log(book["zuozhe"]);
例外:属性名如果是变量表示的,只能使用方括号
for(var k in book){ //每循环一次,k就是当前的属性名
console.log(book[k]);
}
JSON数组:
var books=[
{
"name": "西游记",
"zuozhe": "罗贯中",
"price": 50.1
},
{
"name": "三国",
"zuozhe": "罗贯中",
"price": 50.1
},
{
"name": "红楼梦",
"zuozhe": "罗贯中",
"price": 50.1
},
];
console.log(books[0].price);
console.log(books[0].name);
console.log(books[1].zuozhe);
console.log(books[2].price);