相关疑难解决方法(0)

Javascript - 将trim函数应用于数组中的每个字符串

想要修剪数组中的每个字符串,例如,给定

x = [' aa ', ' bb '];
Run Code Online (Sandbox Code Playgroud)

产量

['aa', 'bb']
Run Code Online (Sandbox Code Playgroud)

我的第一次试验是

x.map(String.prototype.trim.apply)
Run Code Online (Sandbox Code Playgroud)

它得到了"TypeError:Function.prototype.apply在undefined上调用,这是一个未定义的而不是函数"在chrome中.

然后我试了一下

x.map(function(s) { return String.prototype.trim.apply(s); });
Run Code Online (Sandbox Code Playgroud)

有用.有什么不同?

javascript function

64
推荐指数
6
解决办法
6万
查看次数

将Javascript函数绑定到变量

我试图绑定其中一个toLowerCasetoUpperCase一个变量,我错过了一些步骤.这是我的代码的简化版本:

for(let i = 0; i < arr.length; i++) {
    if(flag) {
        arr[i] = arr[i].toUpperCase();
    }
    else {
        arr[i] = arr[i].toLowerCase();
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望我可以这样做:

let func = flag  ? String.prototype.toUpperCase : String.prototype.toLowerCase;
arr = arr.map(x=>func(x));
Run Code Online (Sandbox Code Playgroud)

虽然我可以设置功能,看起来我没有正确使用它,因为我得到了Uncaught TypeError: String.prototype.toLowerCase called on null or undefined.我在这里错过了什么?

javascript arrays

2
推荐指数
1
解决办法
48
查看次数

标签 统计

javascript ×2

arrays ×1

function ×1