On Sun, Aug 2, 2009 at 7:17 PM, 白石俊平 <span dir="ltr">&lt;<a href="mailto:shumpei.shiraishi@gmail.com">shumpei.shiraishi@gmail.com</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi,<br>
<br>
I&#39;m implementing the HTML5 Web Storage using Gears<br>
(<a href="http://code.google.com/p/gear5/" target="_blank">http://code.google.com/p/gear5/</a>), so I have several questions with<br>
the spec.<br>
<br>
-Storage.setItem(key, val)<br>
--is key allowed non-string type object?</blockquote><div><br></div><div>Yes, but... </div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">--and when pass non-string object to key/value, is it automatically<br>

converted to string?(I&#39;m considering to convert to use String<br>
constructor - String(key) )</blockquote><div><br></div><div>Yes.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br>
--when value is null, should `setItem(&quot;key&quot;, null)` behave as like as<br>
`removeItem(&quot;key&quot;)`? (localStorage.setItem(&quot;key&quot;, null);<br>
alert(localStorage.length); &lt;-- what is value displayed?)</blockquote><div><br></div><div>No, it&#39;s not the same as removeItem.  It&#39;ll be set to &#39;null&#39;.</div><div><br></div><div>Check out Safari 4&#39;s implementation if you&#39;d like to see the correct behavior for all of these cases.  I&#39;ve been spending a lot of time with it, and it matches the spec in every case I&#39;ve tried.  (And I&#39;ve tried a lot...I&#39;m working on it for Chromium.)  :-)</div>
<div><br></div><div>J</div></div>