{"pageContext":{"index":25,"total":364,"name":"2019-10-27","items":[{"node":{"frontmatter":{"title":"AWS宣布CloudWatch 异常检测GA(General Availability)","publish":true,"cover":"","showCover":true,"date":"2019-10-25","category":"devops","url":"https://docs.aws.amazon.com/zh_cn/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html","author":"AWS","translator":"","tags":["devops"],"priority":1},"html":"<p>CloudWatch 会将机器学习算法应用于指标的过去数据来创建指标的预期值模型，并考虑指标的趋势和每小时、每日和每周模式。机器学习算法训练最多两周的指标数据，但即使指标没有完整的两周数据，您也可以为指标启用异常检测。</p>"}},{"node":{"frontmatter":{"title":"Moment.js秘笈","publish":true,"cover":"","showCover":true,"date":"2019-10-25","category":"nodejs","url":"https://nodejs.org/en/blog/release/v13.0.0/","author":"Valeri Karpov","translator":"","tags":["moment"],"priority":1},"html":"<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">const</span> moment <span class=\"token operator\">=</span> <span class=\"token function\">require</span><span class=\"token punctuation\">(</span><span class=\"token string\">'moment'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token keyword\">const</span> d <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">Date</span><span class=\"token punctuation\">(</span><span class=\"token string\">'2019/06/01'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token function\">moment</span><span class=\"token punctuation\">(</span>d<span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span><span class=\"token function\">format</span><span class=\"token punctuation\">(</span><span class=\"token string\">'MMMM d, YYYY'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> \n<span class=\"token comment\">// June 1, 2019</span></code></pre></div>\n<p>常用的格式<br>\n年<br>\nYYYY: '2019'<br>\nYY: '19'<br>\n月<br>\nMMMM: 'June'<br>\nMMM: 'Jun'<br>\nMM: '06'<br>\nM: '6'<br>\n日期<br>\nDD: '01'<br>\nD: '1'<br>\nDo: '1st'\n小时<br>\nHH: '14'   24小时制<br>\nH: '14'<br>\nhh: '02'   12小时制\nh: '2'<br>\n分\nmm: '04'<br>\nm: '4'<br>\n秒<br>\nss: '09'<br>\ns: '9'<br>\nA: 'AM' or 'PM'<br>\na: 'am' or 'pm'     </p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token comment\">// 'The 1st of June' he 和 of 都是格式化字符，所以要转义</span>\nm<span class=\"token punctuation\">.</span><span class=\"token function\">format</span><span class=\"token punctuation\">(</span><span class=\"token string\">'[The] Do [of] MMMM'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<p>时间间隔    </p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token keyword\">const</span> moment <span class=\"token operator\">=</span> <span class=\"token function\">require</span><span class=\"token punctuation\">(</span><span class=\"token string\">'moment'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token keyword\">const</span> m1 <span class=\"token operator\">=</span> <span class=\"token function\">moment</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">new</span> <span class=\"token class-name\">Date</span><span class=\"token punctuation\">(</span><span class=\"token string\">'2019/06/01 2:04:03'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">const</span> m2 <span class=\"token operator\">=</span> m1<span class=\"token punctuation\">.</span><span class=\"token function\">clone</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span><span class=\"token function\">add</span><span class=\"token punctuation\">(</span><span class=\"token number\">59</span><span class=\"token punctuation\">,</span> <span class=\"token string\">'seconds'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n<span class=\"token keyword\">const</span> duration <span class=\"token operator\">=</span> moment<span class=\"token punctuation\">.</span><span class=\"token function\">duration</span><span class=\"token punctuation\">(</span>m1<span class=\"token punctuation\">.</span><span class=\"token function\">diff</span><span class=\"token punctuation\">(</span>m2<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\nduration<span class=\"token punctuation\">.</span><span class=\"token function\">seconds</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">// 59</span>\nduration<span class=\"token punctuation\">.</span><span class=\"token function\">milliseconds</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">// 59000</span>\n\nduration<span class=\"token punctuation\">.</span><span class=\"token function\">humanize</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">// 'a minute'</span>\nduration<span class=\"token punctuation\">.</span><span class=\"token function\">humanize</span><span class=\"token punctuation\">(</span><span class=\"token boolean\">true</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">// 'in a minute'</span>\n\nmoment<span class=\"token punctuation\">.</span><span class=\"token function\">duration</span><span class=\"token punctuation\">(</span>m2<span class=\"token punctuation\">.</span><span class=\"token function\">diff</span><span class=\"token punctuation\">(</span>m1<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span><span class=\"token function\">humanize</span><span class=\"token punctuation\">(</span><span class=\"token boolean\">true</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> <span class=\"token comment\">// 'a minute ago'</span></code></pre></div>"}},{"node":{"frontmatter":{"title":"Node v13.0.0发布，Node v12进入LTS周期","publish":true,"cover":"https://nodejs.org/static/images/logo.svg","showCover":true,"date":"2019-10-25","category":"nodejs","url":"https://nodejs.org/en/blog/release/v13.0.0/","author":"Node.js Foundation 编辑 Ka","translator":"","tags":["lts"],"priority":1},"html":"<blockquote>\n<p>老编认为：Node12是静悄悄的强大变革，等Node12普及了，服务端格局将会有很大变化，希望你不要错过。</p>\n</blockquote>"}},{"node":{"frontmatter":{"title":"OpenJS基金会开放两个认证考试开始收钱","publish":true,"cover":"https://openjsf.org/wp-content/uploads/sites/84/2019/10/openjs_nodejs_application_developer.png","showCover":true,"date":"2019-10-25","category":"nodejs","url":"https://openjsf.org/blog/2019/10/22/openjs-foundation-launches-new-professional-certification-program-to-support-the-future-of-node-js-development/","author":"Rachel Romoff 编辑 Ka","translator":"","tags":["openjs"],"priority":2},"html":"<p>分别是<a href=\"https://training.linuxfoundation.org/certification/jsnad/\">OpenJS Node.js Application Developer (JSNAD)</a>和<a href=\"https://training.linuxfoundation.org/certification/jsnsd/\">OpenJS Node.js Services Developer (JSNSD)</a> 针对两年以上经验的nodejs开发者和nodejs RESTapi开发者。\n每门考试包括2个小时的在线代码测试，有专人监控引导，全英文环境。</p>\n<blockquote>\n<p>每门认证300USD，不贵不贵，刚过1024，俺们程序员有的是money！</p>\n</blockquote>"}},{"node":{"frontmatter":{"title":"mermaid文本表示的图形工具","publish":true,"cover":"https://github.com/knsv/mermaid/raw/master/img/new-diagrams.png","showCover":true,"date":"2019-10-26","category":"frontend","url":"https://github.com/knsv/mermaid","author":"Knut Sveidqvist","translator":"","tags":["chart"],"priority":1},"html":"<p>图形的markdown语言。</p>"}},{"node":{"frontmatter":{"title":"chart-race-react react动态排序竞赛式图表","publish":true,"cover":"https://github.com/Mckinsey666/chart-race-react/raw/master/assets/border1.gif","showCover":true,"date":"2019-10-24","category":"frontend","url":"https://github.com/Mckinsey666/chart-race-react","author":"Brian Chao","translator":"","tags":["react"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"peaks.js-有BBC研发部开源的可在浏览器上运行的波形编辑工具","publish":true,"cover":"https://github.com/bbc/peaks.js/raw/master/peaks.png?raw=1","showCover":true,"date":"2019-10-24","category":"frontend","url":"https://github.com/bbc/peaks.js","author":"BBC 编辑 Ka","translator":"","tags":["waveform"],"priority":2},"html":"<p><a href=\"https://waveform.prototyping.bbc.co.uk/\">在线demo</a></p>\n<p>在浏览器上可通过配合<a href=\"https://www.w3.org/TR/webaudio/\">Web Audio API</a>生成波形文件。</p>"}},{"node":{"frontmatter":{"title":"pg_auto_failover postgres自动故障切换工具","publish":true,"cover":"","showCover":true,"date":"2019-10-24","category":"database","url":"https://github.com/citusdata/pg_auto_failover","author":"Citus Data","translator":"","tags":["postgres"],"priority":1},"html":"<p><a href=\"https://techcommunity.microsoft.com/t5/Azure-Database-for-PostgreSQL/Auto-Failover-with-PostgreSQL-12/ba-p/917637\">支持PG 12</a></p>"}},{"node":{"frontmatter":{"title":"rxdb-运行在浏览器上的实时NoSQL数据库","publish":true,"cover":"https://github.com/pubkey/rxdb/raw/master/docs-src/files/realtime.gif","showCover":true,"date":"2019-10-26","category":"database","url":"https://github.com/pubkey/rxdb","author":"pubkey","translator":"","tags":["rx"],"priority":1},"html":"<p>rx代表reactive,当数据库改动时，可通过事件监听立刻得到通知。</p>"}},{"node":{"frontmatter":{"title":"pup基于meteor,graphql,react bootstrap3的带admin的样板开发框架","publish":true,"cover":"","showCover":true,"date":"2019-10-21","category":"nodejs","url":"https://github.com/cleverbeagle/pup","author":"Clever Beagle 编辑 Ka","translator":"","tags":["meteor"],"priority":1},"html":"<ul>\n<li>\n<p>整合graphql的开发流程，使用的是apollo</p>\n</li>\n<li>\n<p><a href=\"https://cleverbeagle.com/pup/v2/introduction\">文档</a></p>\n</li>\n<li>\n<p>支持SSR</p>\n</li>\n<li>\n<p>支持OAuth</p>\n</li>\n</ul>\n<p>背后的公司是<a href=\"https://cleverbeagle.com\">cleverbeagle</a></p>"}},{"node":{"frontmatter":{"title":"tinacms可实时编辑网站的基于gatsby,nextjs的工具","publish":true,"cover":"https://camo.githubusercontent.com/47e7613548ddacec01bc94710d8e0357eb262f09/68747470733a2f2f7265732e636c6f7564696e6172792e636f6d2f666f7265737472792d64656d6f2f766964656f2f75706c6f61642f64755f31362c775f3730302c655f6c6f6f702f76313537313135393937342f74696e612d6865726f2d64656d6f2e676966","showCover":true,"date":"2019-10-24","category":"frontend","url":"https://github.com/tinacms/tinacms","author":"Tina 编辑 Ka","translator":"","tags":["cms"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"reaptcha - 封装Google reCAPTCHA的react组件","publish":true,"cover":"https://camo.githubusercontent.com/ac33f42965dd0c0c9b0f7966e058c11df2dd6748/68747470733a2f2f692e696d6775722e636f6d2f34347a456a44352e706e67","showCover":true,"date":"2019-10-24","category":"frontend","url":"https://github.com/sarneeh/reaptcha","author":"Jacob Sarnowski","translator":"","tags":["react"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"uPlot关注性能的时序图","publish":true,"cover":"https://github.com/pubkey/rxdb/raw/master/docs-src/files/realtime.gif","showCover":true,"date":"2019-10-26","category":"frontend","url":"https://github.com/leeoniya/uPlot","author":"Leon Sorokin","translator":"","tags":["chart"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"全程直播怎么开一家创业企业","publish":true,"cover":"","showCover":true,"date":"2019-10-24","category":"entrepreneur","url":"https://www.youtube.com/playlist?list=PLFP8wPiIB7kz7pbYCnjIcYN8EhL9NAnGt","author":"Sam Pierce Lolla","translator":"","tags":["startup"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"将curl命令转换为nodejs,python等的代码","publish":true,"cover":"","showCover":true,"date":"2019-10-25","category":"nodejs","url":"https://curl.trillworks.com/#node","author":"Nick Carneiro","translator":"","tags":["curl"],"priority":1},"html":""}},{"node":{"frontmatter":{"title":"游戏-飞翔的鸡蛋(Aero Egg)","publish":true,"cover":"https://blog.kazge.com/assets/volitantegg-show.gif","showCover":true,"date":"2019-06-12","category":"game","url":"https://blog.kazge.com/show/volitantegg/%E9%A3%9E%E7%BF%94%E7%9A%84%E9%B8%A1%E8%9B%8B.apk","author":"广告","translator":"","tags":["ads"],"priority":1},"html":"<p><a href=\"https://itunes.apple.com/us/app/volitant-egg-ads-version/id1247264387?mt=8\">APP Store(非国内账户可下载)</a>\n<a href=\"https://blog.kazge.com/show/volitantegg/%E9%A3%9E%E7%BF%94%E7%9A%84%E9%B8%A1%E8%9B%8B.apk\">安卓 - 中文</a></p>"}},{"node":{"frontmatter":{"title":"想让你的文章出现在这里？","publish":true,"cover":"","showCover":true,"date":"2019-07-08","category":"frontend","url":"mailto:editor@zhouexin.com?subject=投稿!","author":"投稿","translator":"","tags":["editor"],"priority":1},"html":""}}]}}