<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Metropolis_cn的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Metropolis_cn</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Metropolis_cn]]></copyright><item><title><![CDATA[深入JavaScript中的精度丢失]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80678052</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80678052</guid><author>Metropolis_cn</author><pubDate>Wed, 13 Jun 2018 13:53:31 +0800</pubDate><description><![CDATA[深入剖析使用双精度浮点数存储小数精度丢失的原因，重现计算机存储方式和计算过程，提供解决精度丢失的方法。]]></description><category></category></item><item><title><![CDATA[Vertical-Align，你应该知道的一切]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80648164</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80648164</guid><author>Metropolis_cn</author><pubDate>Mon, 11 Jun 2018 10:16:23 +0800</pubDate><description><![CDATA[本文转载自众成翻译

原文地址



好，我们聊聊vertical-align。这个属性主要目的用于将相邻的文本与元素对齐。而实际上，verticle-algin可以在不同上下文中灵活地对齐元素，以及进行细粒度的控制，不必知道元素的大小。元素仍然在文档流中，因而其他元素可以根据它们大小的变化进行相应的调整。一个有用的例子就是居中图标与旁边的文本。

Vertical-Align是个怪物

可是，v...]]></description><category></category></item><item><title><![CDATA[JavaScript中的语法]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80568857</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80568857</guid><author>Metropolis_cn</author><pubDate>Mon, 04 Jun 2018 16:14:55 +0800</pubDate><description><![CDATA[总结和剖析JavaScript中的语法，主要参考《你不知道的JavaScript(中卷)》第五章。



5.1 语句和表达式

开发人员常常将“语句”（statement）和“表达式”（expression）混为一谈，但这里我们要将二者区别开来，因为它们在JavaScript中存在一些重要的差别。

在英语中，“句子”是完整表达某个意思的的一组词，由一个或多个“短语”（phrase）组成，它们之...]]></description><category></category></item><item><title><![CDATA[JavaScript中的强制类型转换]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80557166</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80557166</guid><author>Metropolis_cn</author><pubDate>Sun, 03 Jun 2018 15:42:55 +0800</pubDate><description><![CDATA[总结和剖析JavaScript中的强制类型转换，主要参考《你不知道的JavaScript(中卷)》第四章。



1.抽象值操作



1.1 ToString

抽象操作ToString负责处理非字符串到字符串的强制类型转换。

基本类型值的字符串化规则为：null转换为”null”,undefined转换为”undefined”,true转换为”“true”。数字的字符串化遵循通用规则，那些极...]]></description><category></category></item><item><title><![CDATA[bind函数polyfill源码解析]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80440988</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80440988</guid><author>Metropolis_cn</author><pubDate>Thu, 24 May 2018 19:17:21 +0800</pubDate><description><![CDATA[分析MDN文档提供的bind函数polyfill实现细节



MDN上提供的polyfill如下，主要的疑惑点应该就是 this instanceof fNOP 作用是什么？

if (!Function.prototype.bind) {
  Function.prototype.bind = function(oThis) {
    if (typeof this !== 'functio...]]></description><category></category></item><item><title><![CDATA[使用阿里云短信服务]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80402173</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80402173</guid><author>Metropolis_cn</author><pubDate>Tue, 22 May 2018 10:27:57 +0800</pubDate><description><![CDATA[通过Node使用阿里云提供的短信服务功能



我们直接从代码出发，了解如何使用阿里云短信服务

首先需要安装sdk工具包

npm install @alicloud/sms-sdk --save

其次是Node.js代码



/**
 * 云通信基础能力业务短信发送、查询详情以及消费消息示例，供参考。
 */
const SMSClient = require('@alicloud/sms...]]></description><category></category></item><item><title><![CDATA[摘记2018-04-24]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80090174</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/80090174</guid><author>Metropolis_cn</author><pubDate>Thu, 26 Apr 2018 10:23:46 +0800</pubDate><description><![CDATA[程序界的「二八定律」，百分之八十的问题可以运用百分之二十的知识来解决，而剩下的百分之二十的问题需要运用百分之八十的知识来解决。准备好那百分之八十的知识，才会在遇到有挑战的问题时更加游刃有余，机会永远留给准备好的人。...]]></description><category></category></item><item><title><![CDATA[WebRTC学习总结]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79960576</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79960576</guid><author>Metropolis_cn</author><pubDate>Mon, 16 Apr 2018 14:50:29 +0800</pubDate><description><![CDATA[WebRTC (Web Real-Time Communications) 是一项实时通讯技术，它允许网络应用或者站点，在不借助中间媒介的情况下，建立浏览器之间点对点（Peer-to-Peer）的连接，实现视频流和（或）音频流或者其他任意数据的传输。WebRTC包含的这些标准使用户在无需安装任何插件或者第三方的软件的情况下，创建点对点（Peer-to-Peer）的数据分享和电话会议成为可能。

本...]]></description><category></category></item><item><title><![CDATA[摘记2018-04-11]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79960552</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79960552</guid><author>Metropolis_cn</author><pubDate>Mon, 16 Apr 2018 14:48:39 +0800</pubDate><description><![CDATA[其实闲着并不可怕，闲着也是一种享受，能够保持闲着也是一种能力，可怕的是，我们觉得是在虚度时光，盲目地给安排了一些无关紧要的事情， 反而为自己努力而感动的不要不要的。

请不要让自己只是看起来很努力，因为结果不会陪你演戏。要让别人羡慕，太容易了，适当装一下就可以了，但要让自己羡慕自己，就有点难了。

真正的努力，不是比谁花的时间多，看上去谁更加努力，而是能否找到合适自己的方法，然后多思考，多总结，摸...]]></description><category></category></item><item><title><![CDATA[直播终端技术比较：Native vs H5 vs WebRTC vs 小程序]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79861144</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79861144</guid><author>Metropolis_cn</author><pubDate>Mon, 09 Apr 2018 09:21:47 +0800</pubDate><description><![CDATA[2017 年 12 月，微信小程序向开发者开放了实时音视频能力，给业内带来广阔的想象空间。连麦互动直播技术在 2016 年直播风口中成为视频直播的标配，然而只有在原生的 APP 上才能保障良好的用户体验。

那时候，在微信小程序中无法进行实时音视频互动。微信小程序在去年 12 月宣布开放实时音视频能力，再加上去年 6 月苹果宣布即将支持 WebRTC，业内一下子千树万树梨花开，前途一片光明。

连...]]></description><category></category></item><item><title><![CDATA[在AI横行的时代，你为什么还要固守大前端？]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79856536</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79856536</guid><author>Metropolis_cn</author><pubDate>Sun, 08 Apr 2018 19:29:09 +0800</pubDate><description><![CDATA[本文转载自前端之巅

原文地址

我对自己的定位是 Node 全栈，以大前端为主，Node 辅助，囊括所有和用户直接相关的开发。我认为这是趋势，我也确实在自身的经历中体验到了好处。目前大前端还没有形成固定模式，还在混乱发展，所以前景是非常被看好的。当收到InfoQ的邀请，让我写《架构师》4月刊的卷首语的时候，我特别想聊聊在 AI 横行的时代，你为什么还要固守大前端？

1. 大前端还没有天花板

...]]></description><category></category></item><item><title><![CDATA[PWA登陆iOS了，但它还有这些缺陷]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79856514</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79856514</guid><author>Metropolis_cn</author><pubDate>Sun, 08 Apr 2018 19:27:37 +0800</pubDate><description><![CDATA[Apple 在 iOS 11.3 中悄悄加入了对“渐进式 Web 应用”（PWA）这一系列新技术的基本支持。是时候看看这些技术是如何生效的？它有什么能力？会遇到哪些挑战？以及如果已经发布了 PWA，又需要了解哪些事情？本文概括介绍了最新发布的 iOS 11.3 对 PWA 的支持情况，以及 PWA 应用开发者需要注意的问题。

本文转载自前端之巅

作者 Maximiliano Firtman

...]]></description><category></category></item><item><title><![CDATA[我理解的JS事件轮询机制]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79693685</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79693685</guid><author>Metropolis_cn</author><pubDate>Mon, 26 Mar 2018 09:38:11 +0800</pubDate><description><![CDATA[JS是单线程语言，深入理解JS里的Event Loop



划重点！！！



JS的执行机制(一)：

1.首先判断JS是同步还是异步,同步就进入主进程,异步就进入event table

2.异步任务在event table中注册函数,当满足触发条件后,被推入event queue

3.同步任务进入主线程后一直执行,直到主线程空闲时,才会去event queue中查看是否有可执行的异步任务...]]></description><category></category></item><item><title><![CDATA[JavaScript中的in操作符]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79492549</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/79492549</guid><author>Metropolis_cn</author><pubDate>Fri, 09 Mar 2018 08:58:33 +0800</pubDate><description><![CDATA[原文出处：http://blog.youkuaiyun.com/xufeiayang/article/details/52727906



in 操作检查对象中是否有名为 property 的属性。也可以检查对象的原型，以便知道该属性是否为原型链的一部分。



1.对于一般的对象属性需要用字符串指定属性的名称

var mycar = {make: &quot;Honda&quot;, model: &quot;Accord&quot;, ye...]]></description><category></category></item><item><title><![CDATA[区块链入门]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78938956</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78938956</guid><author>Metropolis_cn</author><pubDate>Sat, 30 Dec 2017 19:31:23 +0800</pubDate><description><![CDATA[学习区块链]]></description><category></category></item><item><title><![CDATA[动态规划经典案例]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78862727</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78862727</guid><author>Metropolis_cn</author><pubDate>Thu, 21 Dec 2017 13:25:05 +0800</pubDate><description><![CDATA[透过经典案例学习动态规划]]></description><category></category></item><item><title><![CDATA[JavaScript中的小技巧和注意点（二）]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78655341</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78655341</guid><author>Metropolis_cn</author><pubDate>Tue, 28 Nov 2017 15:08:40 +0800</pubDate><description><![CDATA[记录平时学习过程中关于JavaScript容易遗忘的知识点和需要注意的地方，点点滴滴贵在积累...]]></description><category></category></item><item><title><![CDATA[2017年全国研究生数学建模自记]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78599226</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78599226</guid><author>Metropolis_cn</author><pubDate>Wed, 22 Nov 2017 09:33:54 +0800</pubDate><description><![CDATA[2017年研究生数学建模侥幸获得三等奖，在这里进行自记]]></description><category></category></item><item><title><![CDATA[Sticky footers布局的实现]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78570860</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78570860</guid><author>Metropolis_cn</author><pubDate>Sat, 18 Nov 2017 20:08:58 +0800</pubDate><description><![CDATA[Sticky footers这种效果不仅是无处不在，很受欢迎，而且实现起来看上去也非常容易。但实际上实现起来要比预期花的时间更多，这里我们使用固定高度和flex布局两种方法实现Sticky footers效果]]></description><category></category></item><item><title><![CDATA[font-size:0的妙用]]></title><link>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78345475</link><guid>https://blog.youkuaiyun.com/Metropolis_cn/article/details/78345475</guid><author>Metropolis_cn</author><pubDate>Wed, 25 Oct 2017 19:33:58 +0800</pubDate><description><![CDATA[使用font-size:0消除空白间距]]></description><category></category></item></channel></rss>