<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>status</title>
	<atom:link href="https://www.hu365.dev/blog/tag/status/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.hu365.dev</link>
	<description>Justin Woo（吴晓虎）的个人博客，生命不息，学习不止</description>
	<lastBuildDate>Sun, 18 Feb 2024 01:34:42 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.3</generator>

<image>
	<url>https://www.hu365.dev/wp-content/uploads/2022/10/cropped-logo-正矩形.blue_-32x32.png</url>
	<title>status</title>
	<link>https://www.hu365.dev</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>全局变量 window.status</title>
		<link>https://www.hu365.dev/blog/2022/11/181/</link>
		
		<dc:creator><![CDATA[Justin]]></dc:creator>
		<pubDate>Sat, 26 Nov 2022 10:28:00 +0000</pubDate>
				<category><![CDATA[前端笔记]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[status]]></category>
		<guid isPermaLink="false">https://www.hu365.dev/?p=181</guid>

					<description><![CDATA[参考资料： 在使用apiCloud编写手机App的项目里，有部分使用纯原生js实现的功能，在这里调试的时候，我遇到了一个奇怪的问题，简单地说，他是这样的： 我的本意是打算把'111'和'222'当作参数来处理的，但是结果却超出我的预料它居然循环出了：'1' ' <a href="https://www.hu365.dev/blog/2022/11/181/" class="cosmoswp-btn">阅读更多</a>]]></description>
										<content:encoded><![CDATA[
<p>参考资料：</p>



<ul>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Window/status">Window.status &#8211; Web APIs | MDN (mozilla.org)</a></li>
</ul>



<p>在使用<code>apiCloud</code>编写手机<code>App</code>的项目里，有部分使用纯原生<code>js</code>实现的功能，在这里调试的时候，我遇到了一个奇怪的问题，简单地说，他是这样的：</p>



<pre class="EnlighterJSRAW" data-enlighter-language="js" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">var status = ['111', '222'];
for (var i = 0;i &lt; status.length;i++) {
	// 处理数据
	console.log(status[i]); // 1 1 1 , 2 2 2
}</pre>



<p>我的本意是打算把<code>'111'</code>和<code>'222'</code>当作参数来处理的，但是结果却超出我的预料<br>它居然循环出了：<code>'1' '1' '1' ',' '2' '2' '2'</code>总计<code>6</code>个参数</p>



<p>看结构，它似乎是对处理的数组进行了字符串转换，但是我并没有做此操作<br>第一想法，是不是<code>appCloud</code>哪里做了特殊处理，毕竟这是在它家的平台运行，但是并没有找到相关处理</p>



<p>在寻人讨论的时候，他说了一句：你在浏览器调试试试，看有没有这个问题<br>听到这话的我，内心其实是抗拒的，这么简单的代码，看一眼就知道结果，还要跑去浏览器去调试？那不是多此一举么</p>



<p>然后我就被打脸了，浏览器的调试工具输出了一样的结果···</p>



<p>这···这···最基础的调试方法狠狠的打了一耳光</p>



<p>所以再仔细分析问题，把<code>var</code>换成<code>let</code>/<code>const</code>，打印结果如预期</p>



<pre class="EnlighterJSRAW" data-enlighter-language="js" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">const status = ['111', '222'];
for (var i = 0;i &lt; status.length;i++) {
	// 处理数据
	console.log(status[i]); // 111 222
}</pre>



<p>那么用<code>var</code>的问题，自然是全局变量的问题，那对应的全局变量就是：<code>window.status</code></p>



<p>一个早期用来显示浏览器加载状态的文本信息字段，只能用来存储<code>String</code>类型，所以用<code>var</code>定义时，实际上是在给<code>window.status</code>赋值，而且它会自动将数据进行字符串转换</p>



<p>那么，记录这次经历不是为了记下这个将被废弃的属性，而是要让自己了解到，查找问题、解决问题的思路与逻辑，一定要一丝不苟，容不得“想当然”的跳过</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
