Javascript日期格式化的简单实现

简要说明

  • 首先这是一个最简单的实现,并不严谨,但能说明问题,将日期格式化的核心思想体现出来,这是重点;
  • 其次,这只是实现日期格式化的一种方式,并不是唯一方式,这种方式相对比较简单,仅供参考;

实现原理

  1. 通过Date对象的相关方法获取到年月日时分秒等数据,再定义格式化的键比如:年对y,月对应M等,生成一个键值对象;
  2. 最为核心的就是正则匹配了,将格式化字符串进行正则匹配替换即可,关于正则的使用那是一门大学问,需要多点时间去吭;
  3. 以下是一个简单的示例代码,可根据需要完善。

示例代码

function (date, fmt = 'yyyy-MM-dd') {
    let map[......]

继续阅读

Promise的简单实现

1、Promise在javascript中的重要性不言而喻,但很多同学并不清楚内部的实现机理,我就我的理解与大家分享一下;

2、最简单的办法就是根据官方的Promise效果来实现相同的效果,我之前也看过网上的相关实现,全篇看到底就懵了,我想能不能出浅入深一步一步来;

3、好了,先实现一个最简单的,只实现then方法,能够根据resolve与reject取到相关结果,仅做功能实现,后续再完善

1、promise.js

/**
 * Promise简单实现 v0.0.1
 *
 * Date:2020-09-24
 *
 * Author:yusian
 */
(function (win[......]

继续阅读

树莓派更换apt-get源

1、树莓派的Raspbian系统是基于debian的嵌入式Linux系统,查看当前debian版本命令:

2、以10.0为例,更换apt-get源

注意:网址末尾的raspbian重复两次是必须的。因为Raspbian的仓库中除了APT软件源还包含其他代码。APT软件源不在仓库的根目录,而在raspbian/子目录下。

编辑镜像站后,请使用sudo apt-get update命令,更新软件源列表,同时检查您的编辑是否正确。

来自清华的镜像源:https://mirrors.tuna.tsinghua.edu.cn/help/raspbian/

[……]

继续阅读

关于Cocoapods速度慢的问题,更换国内镜像源

CocoaPods 是一个 Cocoa 和 Cocoa Touch 框架的依赖管理器,具体原理和 Homebrew 有点类似,都是从 GitHub 下载索引,然后根据索引下载依赖的源代码。

对于旧版的 CocoaPods 可以使用如下方法使用 tuna 的镜像:

新版的 CocoaPods 不允许用pod repo add直接添加master库了,但是依然可以:

最后进入自己的工程,在自己工程的podFile第一行加上:

来自清华的链接:https://mirrors.tuna.tsinghua.edu.cn/help/CocoaPods/

[……]

继续阅读