javascript 函数

本文深入探讨了JavaScript中的变量提升现象及其实现原理,并讲解了如何避免由此引发的问题。此外,还介绍了JavaScript中全局对象window的作用,for循环中变量声明的最佳实践,以及apply、call、map和filter等常用函数的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.变量提升可能带来的效果

function foo() {
    var x = 'Hello, ' + y;
    console.log(x);
    var y = 'Bob';
}

提升之后 

function foo() {
    var y; // 提升变量y的申明,此时y为undefined
    var x = 'Hello, ' + y;
    console.log(x);
    y = 'Bob';
}

2.JavaScript默认有一个全局对象window,全局作用域的变量实际上被绑定到window的一个属性,访问方式如下

alert(window.course); // 'Learn JavaScript'

3.for语句中for(var i=0;;)中 i并不是属于for而是在函数里面,解决办法可以使用let定义i 

4.apply()把参数打包成Array再传入;call()把参数按顺序传入。

5.map函数会把数组的每个值都去调用一次pow函数,reduce()会把函数返回值产于下次的计算

var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var results = arr.map(pow); // [1, 4, 9, 16, 25, 36, 49, 64, 81]
console.log(results);

6.filter()也是接受一个function,根据function返回ture or false 来决定是否抛弃数组元素

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值