前端提高篇(十五)JS进阶11函数bind,【严选】

35 阅读3分钟

HTTP

  • HTTP 报文结构是怎样的?

  • HTTP有哪些请求方法?

  • GET 和 POST 有什么区别?

  • 如何理解 URI?

  • 如何理解 HTTP 状态码?

  • 简要概括一下 HTTP 的特点?HTTP 有哪些缺点?

  • 对 Accept 系列字段了解多少?

  • 对于定长和不定长的数据,HTTP 是怎么传输的?

  • HTTP 如何处理大文件的传输?

  • HTTP 中如何处理表单数据的提交?

  • HTTP1.1 如何解决 HTTP 的队头阻塞问题?

  • 对 Cookie 了解多少?

  • 如何理解 HTTP 代理?

  • 如何理解 HTTP 缓存及缓存代理?

  • 为什么产生代理缓存?

  • 源服务器的缓存控制

  • 客户端的缓存控制

  • 什么是跨域?浏览器如何拦截响应?如何解决?

开源分享:docs.qq.com/doc/DSmRnRG… x:1,

y:2

}

console.log('bind前:',obj);

obj.e = add.bind(obj)

console.log('bind后:',obj);

console.log('执行obj.e():',obj.e());

效果:

在这里插入图片描述

运行效果:

在这里插入图片描述

也可以bind时传部分参数,obj.e()执行时传剩下的参数,传递的顺序是形参的顺序

在这里插入图片描述

bind时传入的参数不可修改:

obj.e = add.bind(obj,10,100);相当于设置默认值a=10,b=100;在obj.e()执行时不能修改;

如果bind时只设定了前部分参数,即a:add.bind(obj,10),在执行时设置后部分参数,即b:obj.e(100);,这种情况下b的值可以被修改,a不能