如何使用“this”关键字来调用a
How to use the "this" keyword to call a
如何在JavaScript中编写一个接收数组和函数(convertFunc)的函数。该函数为数组的每个元素调用 convertFunc。应通过 this 关键字访问该元素。该函数应该返回转换函数调用的返回值数组?例如
function(array, convertFunc() { // array=[1,2,3]
return this+10;
}
应返回 [11,12,13]
谢谢
- 创建函数,例如
function map(arr, convertFunc) {
- 遍历数组的所有元素
arr
。 - 提示:https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Function/call
- 返回一个数组,其中包含函数调用的所有结果。
-
}
自己弄清楚确切的细节,祝你好运:)
array.map(callback[, thisObject]);
可能适合你。
例:
var nums = [1,2,3];
function FuncName(x)
{
return x+10;
}
var result = nums.map(FuncName); //[11,12,13]
如果您正在寻找扩展 Array 对象,请尝试此操作
Array.prototype.convertFunc = function() {
var arr = this, i; // As you want array is access using the this keyword.
for(i = 0; i<arr.length; i++)
{
arr[i] = arr[i] + 10;
}
return arr;
}
var myArray = [1,2,3];
// Call like this
myArray.convertFunc();
在这里摆弄 http://jsfiddle.net/PYxzj/
更新
要回答您的问题,请尝试以下操作
// Pass your array and a function as parameter
function arrayModify(array, convertFunc)
{
return array.convertFunc();
}
// This function iterates your array and adds 10 to each element.
var arrayAddFunction = function() {
var arr = this, i;
for(i = 0; i<arr.length; i++)
{
arr[i] = arr[i] + 10;
}
return arr;
}
// Extending the array object
Array.prototype.convertFunc = arrayAddFunction;
var aa = [1,2,3];
// As you want send your array and a function as parameters to another function
alert(arrayModify(aa,arrayAddFunction)); // -> [11, 12, 13]
在这里摆弄 http://jsfiddle.net/qzB4e/
var myFunc = function(fn) { // array=[1,2,3]
return fn(this);
};
myFunc.call(arr,function convertFunc(){
return this+10;
});
但是,要解决您的确切问题:
var arr = [1,2,3], addTen = function(){
for (var l=this.length;l--;) this[l] += 10;
};
addTen.call(arr);
相关文章:
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- D3在一个调用中绘制不同的SVG形状,没有可见性
- 如何从Java/scala调用js美化程序
- 如何调用这个匿名 JavaScript 函数
- 使用“;这个“;JavaScript原型方法中的关键字
- 如何从模块链中调用函数.导出到节点中
- VBA IE调用包含'这'关键字
- '这'表单中的关键字onsubmit调用
- 如何使用“this”关键字来调用a
- 这个关键字位于$.ajax()中,用于调用其他函数来设置url
- 在forEach中调用类函数:Javascript如何处理“this”关键字
- 如何在 html 中使用“this”关键字在对象上调用方法
- “this”关键字如何在函数调用中解析
- JavaScript 理解递归调用代码清理中的上下文,没有“with”关键字
- 从$http.get JSON调用中删除关键字
- Regex来匹配函数和函数调用,但不包括JavaScript关键字
- 处理包含'这'事件监听器调用的关键字
- 在方法中的 ajax 调用中使用“this”关键字的解决方案
- 带有此关键字的函数调用未定义
- 使用extend关键字防止函数在异步调用完成之前返回