摘要:先推荐一个我自己写的模板引擎,项目地址。下面就是总结的编写模板引擎的几个步骤例如一个模板为最终会编译成为一个函数可以观察到模板中的所有的变量名都被指定成了参数对象的属性,并且该函数自始至终只做了一件事,就是构建字符串,并将其返回。 showImg(https://segmentfault.com/img/remote/1460000007498588?w=300&h=113); 先推荐...
摘要:上述代码采用了依赖注入的方式注入了五个服务,分别用于实现依赖注入的注入器,代码解析器,控制器服务根作用域服务和指令解析服务。紧接着,执行函数,执行指令相关操作,并返回处理后的链接函数。 @(Angular) $compile,在Angular中即编译服务,它涉及到Angular应用的编译和链接两个阶段,根据从DOM树遍历Angular的根节点(ng-app)和已构造完毕的 $rootS...
摘要:常常在开发中,会使用到很多数组和字符串的处理方法,这里列举一些我常用到的一些,方便大家参考使用。数组转化成字符串,原来的数组不变。将作为切割字符,结果存在一个字符串中。补充数字保留小数,结果是字符串类型的。 常常在开发中,会使用到很多js数组和字符串的处理方法,这里列举一些我常用到的一些,方便大家参考使用。 数组方面 push:向数组尾部增加内容,返回的是新数组的长度。 var arr...
摘要:实现阻塞队列在自己实现之前先搞清楚阻塞队列的几个特点基本队列特性先进先出。消费队列空时会阻塞直到写入线程写入了队列数据后唤醒消费线程。 实现Java 阻塞队列 在自己实现之前先搞清楚阻塞队列的几个特点:基本队列特性:先进先出。写入队列空间不可用时会阻塞。获取队列数据时当队列为空时将阻塞。 实现队列的方式多种,总的来说就是数组和链表;其实我们只需要搞清楚其中一个即可,不同的特性主要表现为...
摘要:作用通过版本号解决的问题。示例当前值,预设当前版本号结果当前值,预设当前版本号结果当前值当前版本号运行结果如下这里用休眠,让线程和线程一次执行,通过结果可以看出来,线程执行成功,而线程执行失败。 作用 通过版本号解决ABA的问题。 示例 public class AtomicStampedReferenceDemo { static AtomicStampedReference...