// 案例一:点击获得相应索引号
// 方法一
let lis = document.querySelectorAll('li')
// for (let i = 0; i < lis.length; i++) {
// lis[i].addEventListener('click', function () {
// alert(i)
// console.log(i)
// })
// }
// 方法二 闭包的做法
for (let i = 0; i < lis.length; i++) {
// 利用for循环创建四个立即执行函数
(function(i){
lis[i].addEventListener('click', function () {
alert(i)
console.log(i)
})})(i)
}
案例2 3秒后打印所有小li里的内容
// 案例二:3秒钟打印li里面的所有内容
let lis = document.querySelectorAll('li')
setTimeout(function(){
for (let i=0;i<lis.length;i++){
console.log(lis[i].innerHTML)
}
},3000)
案例3 计算打车价格
// 3公里内13元,之后每多一公里增加5元,拥堵的话,增加10元拥堵费
// 立即执行函数
let car = (function () {
const Start = 13 //起步价
let total = 0 //总价
return {
//正常总价
price: function (i) {
if (i <= 3) {
total = Start
} else {
total = Start + 5 * (i - 3)
}
return total
},
//拥堵费用
duche: function (flag) {
return flag ? total + 10 : total
}
// console.log('总价是:'+total+'元')
}
})()
console.log(car.price(5))
console.log(car.duche(true))