js基础深入

 一、bind的使用 

1、bind初步使用及功能了解

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<script>
		var a=1;
		var o={
			a:2
		}
		function hello(x,y,z){
			console.log(this.a,x,y,z);
		} 
		var world=hello.bind(o,'q');
		var helloWorld=hello.bind();
		world('w','e');
		helloWorld();
		总结:
		函数调用bind方法
	</script>
</body>
</html>

2、使用call和apply仿写bind方法函数newBind

		// 使用call和apply重写bind方法
		Function.prototype.newBind=function(target){
			debugger;
			var self=this;
			var args=[].slice.call(arguments,1);//从下标为1的位置开始截取并返回一个新的数组
			var temp=function(){};
			var f=function(){
				var _arg=[].slice.call(arguments,0);//把参数类数组转为数组并返回
				return self.apply(this instanceof temp? this:(target || window),args.concat(_arg));
			}
			temp.prototype=self.prototype;
			f.prototype=new temp();
			return f;
		}
		function show(x,y,z,w){
			console.log(this,x,y,z,w);
		}
		var Duyio={
			x:20
		}
		var newShow=show.newBind(Duyio,1,2,3);
		newShow(4);

二、instanceof的使用

用法介绍:判断左边元素是不是在右边元素的原型链上,是及返回true,否则返回false

function Foo(){};//构造函数Foo
var f1=new Foo();//构造函数实例f1;
console.log(f1 instanceof Foo) //true
//即说明:
    f1.__proto__===Foo.ptototype;//实例的隐式原型等同于构造函数的显示原型

instanceof 方法内视

function instance_of(L, R) {//L 表示左表达式,R 表示右表达式
 var O = R.prototype;// 取 R 的显示原型
 L = L.__proto__;// 取 L 的隐式原型
 while (true) { 
   if (L === null) 
     return false; 
   if (O === L)// 这里重点:当 O 严格等于 L 时,返回 true 
     return true; 
   L = L.__proto__; 
 } 
}

js原型链图:

JavaScript ååé¾

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScript 是一种脚本语言,可以嵌入到 HTML 页面中,通过浏览器来解析执行。它是一种弱类型、可编程、面向对象的语言,主要用于交互式网页中的客户端脚本编写。 以下是一些 JavaScript 的基础入门知识: 1. 变量和数据类型 JavaScript 中的变量可以使用 var、let 或 const 关键字声明。数据类型包括字符串、数字、布尔值、数组、对象等。 2. 运算符 JavaScript 中常见的运算符包括算术运算符、比较运算符、逻辑运算符等,可以用于进行数学计算和逻辑判断。 3. 控制语句 控制语句包括 if 语句、for 循环、while 循环等,用于控制程序的流程和逻辑。 4. 函数 函数是一段可重复使用的代码块,用于实现某个特定功能。JavaScript 中的函数可以使用 function 关键字定义。 5. 对象和面向对象编程 JavaScript 是一种面向对象的语言,可以使用对象和类来组织代码。对象是一个数据集合,包含属性和方法。 6. DOM 操作 DOM(Document Object Model)是 HTML 文档的编程接口,可以使用 JavaScript 来修改 HTML 页面的内容、样式和行为。 7. 事件处理 JavaScript 可以对 HTML 页面中的事件进行响应,例如单击、鼠标移动等,可以通过事件处理函数来实现。 以上是 JavaScript 的一些基础入门知识,如果你想深入学习 JavaScript,可以通过网上在线教程、书籍或视频课程来学习。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值