从基础出发,不慌不忙,不卑不亢

今天是大年初一,在这个特殊的日子里写下农历2019年的第一篇博客。

其实有许多所谓的基础知识在我们不经意间而不认识它,也许开始我们看不到它的价值,却往往在一些技巧与笨拙中体现,今天举个例子来说明下也许你认识的基础知识,但却又感觉陌生。

从基础出发,不慌不忙,不卑不亢

以上的代码总感觉别扭,它想办到的事情很简单,就是实现像下面的结果:

从基础出发,不慌不忙,不卑不亢

如果上面的例子看不懂,我把它变一个样子,根据上面的思想变成下面的样子:

从基础出发,不慌不忙,不卑不亢

这是在拼接字符串,获取属性后在前面加”:”,在后面加”,”,最后再将多余处理的”,”和”:”去除掉,我感觉这是在费死劲了,还特别惊讶的是这是写在底层的代码,完全可以写成下面的样子:

从基础出发,不慌不忙,不卑不亢

这样我感觉比刚才舒服多了

说到拼字符串,打死你都不会想到JSd的toStrring()这个最平常不过的知识点,有的时候单个的基础知识点没有什么,不过有些基础知识你不明白那么你的代码就“绕远路”了。如下一个实验例子:

前端:

从基础出发,不慌不忙,不卑不亢

后台:

从基础出发,不慌不忙,不卑不亢

注意画红框的。

上面的需求是从前端传来一个以“,”连接的字符串,然后在后台再以“,”Split成一个C#的string[],需求很简单,也许有些人听到用“,”连接字符串时,立马想到用“+”进行字符串拼接,然后后台在判断有没有逗号,有的话便安心额Split,这里立马就出了两个问题:

  1. 以“,”连接只能用“+”拼接吗?
  2. Split一定要判断有没有“,”吗?

之所有会出现这两个问题完全是因为基础知识点不扎实的缘故,按上面的两个截图完全可以做到原始的需求。

在前端有一个渲染页面的过程,这里也是一个非常基础的知识点,不过忽略这里知识点的人何其多。

之前解决一个问题,在这里描述一下:有同事想改一下一个html文件的title,发现直接在代码里面将title设置成自己想要的标题接着运行程序后发现并不起作用。

解决这个问题的关键就是要了解前端页面的渲染顺序,当发现直接修改title不起作用时,很有可能是被某个JS文件代码修改了,那么就需要在JS文件加载完成后再将title做修改。用window.onload就能解决问题。事后同事很不解其中的原因,其实这就是页面的加载顺序使然,掌握了这个知识点便很快定位问题发生的地方。

我们都熟悉一种单例模式,其中用到的是一个什么原理,这么说吧,在静态字段的实现与静态构造函数里面实现的实例化有什么区别,这里涉及到是先执行静态字段还是先执行静态构造函数的问题。

还有在前端最容易让人骂娘的this指向问题,它所牵扯出来的作用域问题等等,都需要我们有一个扎实的基础功,好高骛远,急不得。

为2019年定下基调,继续从基础出发,让基础的知识运用变得不那么基础,基于此继续向更高的目标前进,不慌不忙,不卑不亢。


分享到:


相關文章: