forked from WangJia-mm/JavaScript201708
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path20170810.html
More file actions
15 lines (9 loc) · 4.26 KB
/
20170810.html
File metadata and controls
15 lines (9 loc) · 4.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!DOCTYPE html><html><head><title>20170810</title><meta charset='utf-8'><link href='https://dn-maxiang.qbox.me/res-min/themes/marxico.css' rel='stylesheet'><style>
.note-content {font-family: 'Helvetica Neue', Arial, 'Hiragino Sans GB', STHeiti, 'Microsoft YaHei', 'WenQuanYi Micro Hei', SimSun, Song, sans-serif;}
</style></head><body><div id='preview-contents' class='note-content'>
<h4 id="20170810">20170810</h4>
<blockquote>
<p>KWC(开胃菜) <br>
封装一枚检测数据类型的方法库</p>
</blockquote>
<pre class="prettyprint with-line-number hljs-dark"><code class="language-javascript hljs"><span class="hljs-comment line-number">1.</span>~<span class="hljs-function"><span class="hljs-keyword">function</span> (<span class="hljs-params"></span>) </span>{<br><span class="hljs-comment line-number">2.</span> <span class="hljs-keyword">var</span> obj = {<br><span class="hljs-comment line-number">3.</span> <span class="hljs-attr">isNumber</span>: <span class="hljs-string">'Number'</span>,<br><span class="hljs-comment line-number">4.</span> <span class="hljs-attr">isString</span>: <span class="hljs-string">'String'</span>,<br><span class="hljs-comment line-number">5.</span> <span class="hljs-attr">isBoolean</span>: <span class="hljs-string">'Boolean'</span>,<br><span class="hljs-comment line-number">6.</span> <span class="hljs-attr">isNull</span>: <span class="hljs-string">'Null'</span>,<br><span class="hljs-comment line-number">7.</span> <span class="hljs-attr">isUndefined</span>: <span class="hljs-string">'Undefined'</span>,<br><span class="hljs-comment line-number">8.</span> <span class="hljs-attr">isPlanObject</span>: <span class="hljs-string">'Object'</span>,<br><span class="hljs-comment line-number">9.</span> <span class="hljs-attr">isArray</span>: <span class="hljs-string">'Array'</span>,<br><span class="hljs-comment line-number">10.</span> <span class="hljs-attr">isRegExp</span>: <span class="hljs-string">'RegExp'</span>,<br><span class="hljs-comment line-number">11.</span> <span class="hljs-attr">isDate</span>: <span class="hljs-string">'Date'</span>,<br><span class="hljs-comment line-number">12.</span> <span class="hljs-attr">isFunction</span>: <span class="hljs-string">'Function'</span><br><span class="hljs-comment line-number">13.</span> };<br><span class="hljs-comment line-number">14.</span> <span class="hljs-keyword">var</span> checkType = {};<br><span class="hljs-comment line-number">15.</span> <span class="hljs-keyword">for</span> (<span class="hljs-keyword">var</span> key <span class="hljs-keyword">in</span> obj) {<br><span class="hljs-comment line-number">16.</span> <span class="hljs-keyword">if</span> (!obj.hasOwnProperty(key)) <span class="hljs-keyword">continue</span>;<br><span class="hljs-comment line-number">17.</span><br><span class="hljs-comment line-number">18.</span> checkType[key] = (<span class="hljs-function"><span class="hljs-keyword">function</span> (<span class="hljs-params"></span>) </span>{<br><span class="hljs-comment line-number">19.</span> <span class="hljs-keyword">var</span> className = obj[key];<br><span class="hljs-comment line-number">20.</span> <span class="hljs-keyword">return</span> <span class="hljs-function"><span class="hljs-keyword">function</span> (<span class="hljs-params">val</span>) </span>{<br><span class="hljs-comment line-number">21.</span> <span class="hljs-keyword">var</span> reg = <span class="hljs-keyword">new</span> <span class="hljs-built_in">RegExp</span>(<span class="hljs-string">'\\[object '</span> + className + <span class="hljs-string">'\\]'</span>);<br><span class="hljs-comment line-number">22.</span> <span class="hljs-keyword">return</span> reg.test(<span class="hljs-built_in">Object</span>.prototype.toString.call(val));<br><span class="hljs-comment line-number">23.</span> }<br><span class="hljs-comment line-number">24.</span> })();<br><span class="hljs-comment line-number">25.</span> }<br><span class="hljs-comment line-number">26.</span> <span class="hljs-built_in">window</span>.checkType = checkType;<br><span class="hljs-comment line-number">27.</span>}();<br></code></pre></div></body></html>