20200831冯佳丽-2
学习日志
今日所学:
一、斐波那契数
第一种:
function fb(n){
if(n==1||n==2){
return 1
}
return fb(n-1)+fb(n-2)
}
console.log(fb(6))
第二种:
var n = parseInt(prompt());
var first = 1,second = 1,third;
if (n > 2) {
for (var i = 0; i < n - 2; i++) {
third = first + second;
first = second;
second = third;
}
console.log(third);
} else {
console.log(1);
}
二、存取10个随机数
var arr=[]
for(i=0;i<10;i++){
arr[i]=Math.floor(Math.random()*90+10)
}
console.log(arr)
三、数组
1、创建数组
2、数组元素的访问
数组[下标] arr[i]
注:三个不限制:1、不限制元素数据类型
2、不限制下标越界
3、不限制元素的个数
3、数组的长度
数组名.length
for(var i=0;i<arr.length;i++){
arr[i]; //当前数组元素
}
4、数组分类
索引数组
索引数组以0开始的整数作为下标
关联数组
关联数组使用字符串作为下标,关联数组中的元素只能单独添加
创建关联数组
1、创建空的数组 var hash=[]
2、向数组中添加新元素 hash["下标名/key"]=值
关联数组遍历
for(var key in hash){
key //仅获取当前下标名称
hash[key] //获取当前元素值
}
5、数组中的方法
a、 数组转字符串
String(arr) arr.toString() arr.join("连接符")
b、 拼接和截取数组
拼接:var newArr=arr1.concat(值1,值2,arr2,....)
截取:var subArr=arr.slice(start,end);
c、修改数组
删除元素 arr.splice(start,n)
插入元素 arr.splice(start,0,值1,值2,...)
替换元素 arr.splice(start,n,值1,值2...)
d、翻转数组中的元素
arr.reverse()
e、使用es6语法
arr.sort(function(a,b){
// return a-b; //从小到大排列
// return b-a; //从大到小排列
})
转化为:
arr.sort((a,b)=>a-b)
四、字符串
1、包装对象
目的是为了让原始类型可以像引用类型数据一样,具有属性和方法,但本质上还是原始类型
JS中包装对象有三种:String、Number、Boolean
2、string API
将任意的类型转化为字符串 new String()/ String()
获取字符串的长度 str.length
大小写转化 str.toUpperCase()/str.toLowerCase()
获取指定位置字符 var char=str.charAt(i) var unicode=str.charCodeAt(i) var char=String.fromCharCode(unicode)
查找某个字符出现的位置下标
今日感受:
今日学习很多内容,很难,还是多多练习吧!
评论