最近做项目发现,越是简单的东西往往越是不简单,而如何把不简单的东西做简单,应该是每一个程序猿应该去追求的。今天遇到一个问题让我重新思考了一下人生。。=.=
好了被绕晕没有,有的话思考一下这个问题,怎么创建一个长度为n的有序数组,像这样[0,1,2,3,4,5,…]。
很简单的问题是不是
你可能直接这样
不得不说这是最麻烦的办法。
或是这样
比上一个好一点,但还是用到了遍历循环,有没有什么方法可以不用循环?
这里有一点难度了
我们可以这样
简单粗暴,是不是突然醍醐灌顶
再简单粗暴一点?
可能下面的看起来清晰一点
好了,程序员是要会偷懒的,再少一点
已经不能再少了!
什么?还能再少?
让我们再少一点?
=.= 静静的看你…
这里就是最简单的写法了
写这篇文没什么特别高大上的新技术,但是也感到眼前一亮是不是。
最后看到这里也挺不容易,不放点有用的东西对不起看到这里的你
虽然ES6语法简单粗暴,但是在用到TypeScript的项目中上面的代码有一多半是会报错的。
简直怀疑人生,明明语法没有错!!
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICdzFWRoRXdvN1LclHdpZXYyd2LcBzNvwVZ2x2bzNXak9CX90TQNNkRrFlQKBTSvwFbslmZvwFMwQzLcVmepNHdu9mZvwFVywUNMZTY18CX052bm9CX9UEVOBTTE5UeVpWTmZEWjZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39TMzIjNyczMwADNyITM3EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
在 Vue + TypeScript 中测试,结果报错
可以看到,多出来一个slice方法,应该是ES6的扩展运算符…转义后变为了slice实现
然后测试
果然是这里的问题,
这里多谢大神的指导,我才弄清楚后面的问题。
在项目里,如果单纯的用babel转义ES6是没有问题的,转义后的代码是这样实现的。
但是在我的Vue项目里,由于有TypeScript,所以这部分ES6代码是被ts-loader转义的,他转义的结果是使用了slice实现,但是在迭代器上,是没有slice方法的,所以会出错。
然后知道了问题就去可以解决了,更改配置文件,让babel转义代码而不是用ts-loader。
但是我实在配置不了。。。
所以就换了一种方法去解决。
返回一个字符串元素的数组,然后使用的时候转换一下数据类型,就可以了。
最近已经找到解决方法了,这里贴出来。
修改tsconfig.json的配置
然后就可以了