1、求一个数组里面的最大值,最小值,平均值 以及 求和
数组:var arr = [89,78,99,68,87];
// 最大值
var arr = [89,78,99,68,87];
var max = arr[0];
for(var i= 1;i<arr.length;i++){
if(max<arr[i]){
max = arr[i];
}
}
console.log(max);
// 最小值
var min = arr[0];
for(var i= 1;i<arr.length;i++){
if(min>arr[i]){
min = arr[i];
}
}
console.log(min);
// 平均值
var ave = 0;
for(var i= 0;i<arr.length;i++){
ave +=arr[i];
}
console.log(ave/arr.length)
// 求和
var sum = 0;
for(var i= 0;i<arr.length;i++){
sum +=arr[i];
}
console.log(sum)
2、构造函数的理解
构造函数与普通函数基本一致,与普通函数不同的是普通函数是直接调用,构造函数需要通过new来调用
3、构造函数的创建方式
第一种:采用内置构造函数创建
第二种:采用字面量的方式创建
4、Json格式的字符串转对象,对象转json格式的字符串
JSON.parse() 实现JSON格式字符串转对象
JSON.stringify() 实现对象转格式转JSON格式的字符串
5、改变this的指向
当this以函数的形式调用 this指向Window
当以方法的形式调用时,this指向调用方法的那个对象
使用call和apple还有bind可以改变this的指向
6、求下列字符串中每个字符出现的次数
字符串:var str = "aacdfaeebcddc";
var str = "aacdfaeebcddc";
var str1 ={};//创建一个空对象
for(var i =0;i<str.length;i++){
x = str[i];
if(str1[x]){ //存在的时候属性值加1
str1[x]++;
}else{//不存在的时候创建对象的属性值为1
str1[x] =1;
}
}
for(var x in str1){
console.log(x + "出现了" + str1[x] + "次");
}
7、封装一个函数,使 sum(2,3,4) 和 sum(2)(3)(4) 的结果都为9
function sum(a,b,c){
if(b){
return a+b+c;
}else{
return function(d){
return function(e){
return a+d+e;
}
}
}
}
console.log(sum(2)(3)(4));
console.log(sum(2,3,4));
8、下面代码的打印结果----------2
var n = null;
console.log(n?1:2);