es6 Symbol.iterator接口机制

ES6 Symbol-iterator接口机制
	
	1、使用for of 去遍历时,会首先找遍历对象是否有Symbol.iterator属性,若有可直接使用,若无需要手动设置,对象就需要手动设置 

	2、使用三点运算符,默认调用iterator接口

代码示例:

<html ng-app='app' ng-controller='main' >
<head>
	<meta charset="utf-8">
	<meta name='viewport' content='width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0'>

	<script src='jq/jquery-3.4.1.js'></script>

	<style>

	</style>
</head>
<body >


<script>

	let obj={
		[Symbol.iterator]:function(){
				let index=0;
			return {
					
				next:function(){
					return index < this.length?{value:arr[index++],done:false}:{value:undefined,done:true};
					}
				}
			}
		}
	

	let arr=[1,5];
	let arr2=[2,3,4];
	let arr3=[1,...arr2,5];
	console.log(arr3);

	
</script>
</body>
</html>
发布了387 篇原创文章 · 获赞 3 · 访问量 9145

猜你喜欢

转载自blog.csdn.net/weixin_43294560/article/details/104183637