<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
//apply和call都可以改变this的指向,返回值就是函数的返回值
//apply和call是f1的构造函数的原型里的(也就是Function的原型对象里的)
//参数在三个以及以内都一样,超过三个call的性能要好一些
//自己实现性能测试(只供参考):任何的代码测试都是和测试环境有关,例如CPU,内存等
console.time("A")
console.dir(Function)
function f1(x,y){
console.log(x+y,this)
return "return"
}
var obj = {
sex:"男"
}
var r2 = f1.call(obj,1,2)
var r1 = f1.apply(obj,[1,2])
console.log(r1,r2)
console.timeEnd("A")
</script>
</body>
</html>
js的call比apply性能好
最新推荐文章于 2023-08-26 17:46:07 发布