简述用原生Javascripts实现jquery插件的链式范式编程的原理。


 JavaScript是一种基于对象的语言,已经封装好了很多对象,但很多时候更需要自己去封装对象来满足需求,此文简述了,js中this 关键字,json 对象,以及链式编程的概念。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		
	</head>
	<body>
		<script>
		//在js 中一切皆对象,函数也为对象
			function DivTag(){
	    //获得dom结点	,用this为此对象创建属性,应特别注意js中的this指的是当前上下文,即对调用者的引用,而不是当前对象。
			this.DOM=document.createElement("div");
	
	        //此处仿写jq里面的appendTo方法
			this.appendTo=function(node){
					var Node=document.getElementsByTagName(node)[0];
					Node.appendChild(this.DOM);
					//链式编程核心,返回自身,其他过程在函数内部实现
					return this;
//此处仿写了JQuery中的css方法,传入的是json对象,并用增强for遍历赋值。
				this.css=function(style){
					for (var k in style) {
						this.DOM.style[k]=style[k];
					}
					return this;
				}
			}
			//实例化对象,和使用jq感觉差不多
			new DivTag().appendTo('body').css({
				border:"1px solid blue",
				width:"200px",
				height:"200px"
			});
			
		</script>
	</body>
</html>

运行结果如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值