相关疑难解决方法(0)

如何在jQuery中将参数传递给事件处理程序?

使用jQuery代码:

$("#myid").click(myfunction);

function myfunction(arg1, arg2) {/* something */}
Run Code Online (Sandbox Code Playgroud)

如何myfunction在使用jQuery时传递参数?

javascript jquery

90
推荐指数
5
解决办法
8万
查看次数

为什么绑定比闭包慢?

之前的一张海报在Javascript中询问了Function.bind vs Closure:如何选择?

并且部分收到了这个答案,这似乎表明bind应该比闭包更快:

范围遍历意味着,当您要获取存在于不同范围内的值(变量,对象)时,会增加额外开销(代码执行速度变慢).

使用bind,您将调用具有现有范围的函数,因此不会进行范围遍历.

两个jsperfs表明bind实际上比闭包慢得多.

这是作为对上述评论发布的

并且,我决定编写自己的jsperf

那么为什么绑定这么慢(铬+ 70%)?

由于它不是更快并且闭包可以起到相同的作用,应该避免绑定吗?

javascript performance v8 node.js

76
推荐指数
2
解决办法
2万
查看次数

将额外参数传递给回调函数

我有一个函数callWithMagic,它将一个回调函数作为参数,并用一个参数调用它.

const callWithMagic = callback => {
  const magic = getMagic();
  callback(magic);
};
Run Code Online (Sandbox Code Playgroud)

我还有一个函数processMagic,它有两个参数:magictheAnswer.

const processMagic = (magic, theAnswer) => {
  someOtherMagic();
};
Run Code Online (Sandbox Code Playgroud)

我想将函数processMagic作为参数传递给callWithMagic,但我也希望42将第二个参数传递theAnswerprocessMagic.我怎样才能做到这一点?

callWithMagic(<what should I put here?>);
Run Code Online (Sandbox Code Playgroud)

javascript parameters function callback

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

通过reactjs上的props传递带参数的函数

我有一个函数,它从父级一直到组件层次结构中的子级的子级.通常这不会是一个太大的问题,但我需要从孩子那里收到一个参数.我目前收到此错误消息:Uncaught(在promise中)TypeError:this.props.myFunction不是函数.

这是我正在做的一个示例代码:

class SomeComponent extends Component{

    constructor(props){
        super(props);
        //does whatever stuff        
        this.myFunction = this.myFunction.bind(this);

    }

    //(only applicable to raw and normal forms)
    myFunction(param){
        console.log('do something: ', param);
    }

    render(){
     return (<div><ChildComponent1 myFunction={()=>this.myFunction()}/></div>)
    }
}

class ChildComponent1{
      render(){
  return (<div><ChildComponent2 myFunction={()=>this.props.myFunction()}/></div>)
    }
}

class ChildComponent2{
      render(){
  return (<Button onClick={()=>this.props.myFunction(param)}>SomeButton</Button>)
    }
}
Run Code Online (Sandbox Code Playgroud)

所以只是为了解决这个问题:我将myFunction作为道具从SomeComponent一直传递到ChildComponent2,我希望只要点击一个按钮就调用它,并从ChildComponent2传递参数.

谢谢!

javascript reactjs

22
推荐指数
2
解决办法
5万
查看次数