1、给定一个数组,数组中的值是布尔类型,返回其中true的数量
function numOfTrue () {
}
numOfTrue([true,false,true])// 2
numOfTrue([true,false,true,true,true,true,true,false,true,])// 7
function numOfTrue(ary){
var num=0;
ary.forEach(item=>{
if(item)num++;
});
return num;
}
2、给定一个整数数组。
返回一个数组,其中第一个元素是正数的个数,第二个元素是负数的和。
如果输入数组为空或NULL,则返回空数组。
function count(ary) {
//var rstarr=[];//存放结果
if(!ary||ary.length===0){
return [];
}
var Znum=0;//存放正数的个数
var FSum=0;//存放负数的和
ary.forEach(item=>{
if(item>0){
Znum++;
};
if(item<0){
FSum+=item;
}
});
//rstarr.push(Znum,FSum);
//return rstarr;
return [Znum,FSum];
}
count([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, -11, -12, -13, -14, -15]); // [10, -65]
count();// []
count([]);// []
3、给定一个数组和一个关键词
查找该关键词在数组中第一次出现的索引,和一共出现了几次,返回字符串‘关键词xxx在索引x处第一次出现,一共出现了n次’;
如果没出现关键词,返回’关键词xxx没在数组中出现’
function findStr(arr,keyWord) {
//indexof索引
//fisrtIndex变量存储第一次出现的索引
//sumNum 变量存储一共出现了多少次
if(arr.indexOf(keyWord)===-1){
return `关键词${keyWord}没在数组中出现`
}
var fisrtIndex=-1;
var sumNum=0;
arr.forEach((item,index)=>{
if(item===keyWord){
//firstIndex需要记录第一次出现的索引
//如果firstIndex被赋值过了(不等于-1 就不在赋值了)
if(fisrtIndex === -1){
fisrtIndex=index;
}
sumNum++;
}
})
return `关键词${keyWord}在索引${fisrtIndex}处第一次出现,一共出现了${sumNum}次`;
}
findStr(['hay', 'junk', 'hay', 'hay', 'moreJunk', 'needle', 'randomJunk'], 'needle')//'关键词hneedle在索引5处第一次出现,一共出现了1次'
findStr(['hay', 'junk', 'hay', 'hay', 'moreJunk', 'needle', 'randomJunk'], 'hay')//'关键词hay在索引0处第一次出现,一共出现了3次'
4、倒计时案例
实现效果:距离目标时间2021年04月20日 18:30:00还有几小时几分钟几秒
<script>
//4、倒计时案例
//实现效果:距离目标时间2021年04月20日 18:30:00还有几小时几分钟几秒
//获取当前时间
//现在的时间
//目标时间:"2021-4-20 18:30:00"
//时间差:new Date("2021-4-20 18:30:00")-new Date()
function zero(num) {
return num < 10 ? "0" + num : num;
}
function class1() {
var result = new Date("2021-4-20 18:30:00") - new Date();
if (result <= 0) {
clearInterval(timer);
timer = null;
return "倒计时结束!";
};
var hour = Math.floor(result / 1000 / 60 / 60);
var minutes = Math.floor(result / 1000 / 60 % 60);
var seconds = Math.floor(result / 1000 % 60);
return zero(hour) + "时" + ":" + zero(minutes) + "分" + ":" + zero(seconds) + "秒";
}
var obox = document.getElementById("box");
obox.innerHTML = class1();
var timer = setInterval(function () {
obox.innerHTML = class1();
}, 1000)
</script>
5、下面输出什么
fn();//5
function fn(){ console.log(1); }
fn();//5
function fn(){ console.log(2); }
fn();//5
var fn = function(){ console.log(3); }
fn();//3
function fn(){ console.log(4); }
fn();//3
function fn(){ console.log(5); }
fn();//3
var i = 0;
function A() {
var i = 10;
function x() {
console.log(i);
}
return x;
}
var y = A();
y();
function B() {
var i = 20;
y();
}
B();