How to use the function of bind

The usage of  bind  is
to define a specified scope for called function. Because the key
this is easy to refer another objet,
experically window, instead of itself. Please pay attention to look at the
following example:


 1 //Global variables
2 window.name="Chromium";
3
4 var person={
5 name:"Pin"
6 }
7
8 function say()
9 {
10 alert("My name is "+this.name+"!");
11 }
12
13 say(); //the result is : My name is Chromium!
14
15 var sayfunction=say.bind(person);
16
17 sayfunction(); //the result is : My name is Pin!

When the function say assign to a
variable sayfunction, the scope of
this function has been changed. However, if you use the function of bind
 to refer a specified object person, the scope will own the refer
object person.

How to use the function of bind,布布扣,bubuko.com

时间: 2024-10-27 04:35:11

How to use the function of bind的相关文章

C++ lamda、function、bind使用

参考资料: http://blog.csdn.net/augusdi/article/details/11771699 lambda 表达式的简单语法如下:[capture] (parameters) -> return value { body } 其中[capture]可以选择如下的不同形式: 使用示例: function std::function对象是对C++中现有的可调用实体的一种类型安全的包裹,std::function 使用 bind std::bind是这样一种机制,它可以预先把

std::function,std::bind复习

#include <iostream> #include <functional>//std::bind返回函数对象 void fun1(int a, int b) { std::cout << a << b << std::endl; } using namespace std::placeholders; class A { public: void fun2(int a, int b) { std::cout << a <

《javascript设计模式与开放实践》学习(一)Function.prototype.bind

使用Function.prototype.bind来包装func函数 1.简化版的bind Function.prototype.bind=function (context) { var self=this; //保存原函数 return function () { return self.apply(context,arguments); } }; var obj={name:'seven'}; var func=function(){ alert(this.name); }.bind(ob

【转载】C++ function、bind和lambda表达式

本篇随笔为转载,原贴地址:C++ function.bind和lambda表达式. 本文是C++0x系列的第四篇,主要是内容是C++0x中新增的lambda表达式, function对象和bind机制.之所以把这三块放在一起讲,是因为这三块之间有着非常密切的关系,通过对比学习,加深对这部分内容的理解.在开始之间,首先要讲一个概念,closure(闭包),这个概念是理解lambda的基础.下面我们来看看wikipedia上对于计算机领域的closure的定义: A closure (also le

Function.prototype.bind

解析Function.prototype.bind 简介 对于一个给定的函数,创造一个绑定对象的新函数,这个函数和之前的函数功能一样,this值是它的第一个参数,其它参数,作为新的函数的给定参数. bind的作用 bind最直接的作用就是改变this的指向 // 定义函数 var checkNumericRange = function (value) { if (typeof value !== 'number') return false; else return value >= this

C++中str1::function和bind

在C++的TR1中(TechnologyReport)中包括一个function模板类和bind模板函数,使用它们能够实现类似函数指针的功能,但却却比函数指针更加灵活,特别是函数指向类的非静态成员函数时.能够參考Scott Meyers. <<Effective C++ (3rdEdition)>>. Item 35.以下详细说明其用法. 一.指向全局函数或静态成员函数时 由于在本质上讲全局函数和静态成员函数没有差别,用法上除了静态成员函数在引用时要在前面加域作用符classNam

Function.prototype.bind接口浅析

本文大部分内容翻译自 MDN内容, 翻译内容经过自己的理解. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind Function.prototype.bind Syntax fun.bind(thisArg[, arg1[, arg2[, ...]]]) Parameters thisArg The value to be passed as the thi

0801-----C++Primer听课笔记----------C++11新特性 function 和 bind 的简单使用

1.function 和 函数指针 1.1 function有函数指针的功能,但是使用起来明显比函数指针更加灵活和方便. 1.2 函数指针和function的用法实例. 1.2.1 函数指针首先要清楚函数指针的类型,如void (*)(int, char)等,然后声明一函数指针变量直接调用即可. #include <iostream> using namespace std; /* * 函数指针的用法 */ void test(int i,double j){ cout << i

理解 JavaScript 中的 Function.prototype.bind

函数绑定(Function binding)很有可能是你在开始使用JavaScript时最少关注的一点,但是当你意识到你需要一个解决方案来解决如何在另一个函数中保持this上下文的时候,你真正需要的其实就是 Function.prototype.bind(),只是你有可能仍然没有意识到这点. 第一次遇到这个问题的时候,你可能倾向于将this设置到一个变量上,这样你可以在改变了上下文之后继续引用到它.很多人选择使用 self, _this 或者 context 作为变量名称(也有人使用 that)