将call/apply方法应用于其他对象上的几种方法
2024-09-08 08:09:53
在处理类数组中,发现了两种将数组方法应用于类数组的方法,现将call/apply的常用方式总结一下。
一、当做函数调用
function print_vars(var1,var2){
console.log( var1 );
console.log( var2 );
console.log( this.name );
console.log( this.age );
}
var o = {
name:'tester',
age:
};
print_vars.call( o,,);
二、作为对象的方法,给第三方使用
var arr = {
"0":1,
"1":2,
"2":3,
length:3
};
//用数组实例的every方法应用在arr上
var rst = [].every.call(arr,function(v,i,a){
return v>0;
});
console.log( rst );
此处,用一个[]数组实例,来引用它的every方法的call方法;
三、作为原型的方法,给第三方使用
var arr = {
"0":1,
"1":2,
"2":3,
length:3
};
var rst = Array.prototype.every.call( arr,function(v,i,a){
return v>0;
} );
console.log( "rst:"+rst );
此处,用Array的原型对象中的every方法的call方法来实现。
apply的用法与call类似,只不过以数组形式传递新参而已。
后面再继续补充,(#^.^#)~
最新文章
- lua
- [游戏学习26] MFC 时间函数 画图形
- Kernel Function--核函数收集
- 深入说明HDR
- POJ 1491
- DOM笔记(三):Element接口和HTMLElement接口
- iOS - 字典(NSDictionary)
- PAT-乙级-1003. 我要通过!(20)
- 【转】常用背景色RGB数值
- linux命令行后台运行与调回
- [Android学习]Activity之间传递对象和对象集合
- [转]URL的解析,C语言实现
- MonthCalendar控件
- Frame框架
- JS原生代码实现导航高亮
- 个人简历模板web
- python单元测试模块unittest
- vs2013安装及opencv3.0的配置
- python list元素为dict时的排序
- 【C#】使用NHibernate连接MySQL数据库及增删改查
热门文章
- Linux Chromium安装Adobe Flash Player
- web 界面设计---js提交表单
- 树莓派 mongodb 安装&;报错处理
- [IT学习]华为全连接大会2017
- fastjson将json字符串中时间戳转化为日期
- How to Execute Page_Load() in Page's Base Class?
- codeforces round #433 div2
- MySQL 三种关联查询的方式: ON vs USING vs 传统风格
- DIV居中显示
- 解决axios IE11 Promise对象未定义