js数组,阶乘,递归,冒泡排序
//阶乘
// function aa(n){
// if(aa==1){
// return 2;
// }else{
// return 2*aa(n-1);
// }
// }
//波非那切数 1 1 2 3 5 8
// function aa(n){
// if(n==1){
// return 1;
// }else if(n==2){
// return 1;
// }else{
// return aa(n-1)+aa(n-2);
// }
// }
console.log(aa(4)) 4是第四位数字,想知道第几位就填几
//数组
var a = ['字符',1,true,4,5,6,'hello'];
// console.log(a);
//数组的长度
// a.length;
//获取数组的某个元素
// a[1];
//for循环遍历数组
// for(i = 0; i < a.length; i++){
// console.log(a[i]);
// }
//在数组结尾添加元素
a.push('结尾');
console.log(a);
//在数组开头添加元素
a.unshift('开头');
console.log(a);
//删除结尾元素
a.pop();
console.log(a);
//删除开头元素
a.shift();
console.log(a);
//更改数组内元素
a[2]=100;
//数组转换字符串
var t = a.toString();
console.log(t);
//数组元素结合成字符串,括号内定义分割符号
var tt = a.join('_');
console.log(tt);
//字符串转为数组
var ttt = "hello,world,ooo";
var tttt = ttt.split(' ');
console.log(tttt);
// 包含某个元素返回值是元素在数组的位置
// arr.indexOf(元素);
//彩票练习题
var arr =[];
while(true){
if(arr.length>=6){
break;
}
var red = parseInt(Math.random()*33)+1;
if(arr.indexOf(red)<0){
arr.push(red);
}
}
var lan = parseInt(Math.random()*16)+1;
arr.push(lan);
console.log(arr);
//第一个参数定义元素位置,第二个参数应删除多少个元素,其余参数定义要添加的新元素 arr.splice
// var arrd = [1,2,3,4];
// arrd.splice(1,0,5);
// console.log(arrd);
//合并多个数组 arr.concat(arrr)
// arrr = [6,7,8];
// var t= arrd.concat(arrr);
// console.log(t);
//数组排序正序排序都是按第一个字母或者数字排序
var art = ['ad','nm','mj','l','s'];
art.sort();
console.log(art);
//数组排序倒序
var artt = ['a','k','m']
artt.reverse();
console.log(artt);
//比值函数 a-b是正序 b-a是倒序
var arv = [1,3,66,88,55,33,2,4]
arv.sort(function(a,b){
return a-b;
})
console.log(arv);
//冒泡排序
var arr = [51,8,2,4,3,101];
for(i = 0;i<arr.length;i++){
for(j = i+1; j<arr.length; j++){
if(arr[i]>arr[j]){
var zhj = arr[i];
arr[i] = arr[j];
arr[j] = zhj;
}
}
}
console.log(arr)