1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
---
title: Storage.setItem()
slug: Web/API/Storage/setItem
tags:
- Referencia
translation_of: Web/API/Storage/setItem
---
<p>{{APIRef("Web Storage API")}}</p>
<p>O método <code>setItem()</code> da interface {{domxref("Storage")}}, quando passado 'chave' e 'valor', irá adicionar esta chave ao storage, ou atualizar o valor caso a chave já exista.</p>
<h2 id="Syntax">Syntax</h2>
<pre class="syntaxbox"><em>storage</em>.setItem(<em>keyName</em>, <em>keyValue</em>);</pre>
<h3 id="Parâmetros">Parâmetros</h3>
<dl>
<dt><em>keyName</em></dt>
<dd>Um {{domxref("DOMString")}} contendo o nome da chave que você deseja criar ou alterar.</dd>
<dt><em>keyValue</em></dt>
<dd>Um {{domxref("DOMString")}} contendo o valor da chave que você está criando ou atualizando.</dd>
</dl>
<h3 id="Retornos">Retornos</h3>
<p><em>Sem retorno.</em></p>
<h3 id="Exceções">Exceções</h3>
<p><code>setItem()</code> poderá lançar uma exceção caso o storage esteja cheio. Particularmente, no Safari Mobile (desde o iOS 5) sempre irá lançar quando o usuário entrar em modo privado (Safari define a quota para 0 bytes no modo privado ao contrário de outros navegadores que permitem o armazenamento em modo privado, usando recipientes de dados separados).<br>
Assim os desenvolvedores devem certificar-se de <strong>sempre tratar as possíveis exceções do <code>setItem()</code></strong>.</p>
<h2 id="Exemplo">Exemplo</h2>
<p>A função abaixo irá criar três dados dentro do local storage.</p>
<pre class="brush: js">function populateStorage() {
localStorage.setItem('bgcolor', 'red');
localStorage.setItem('font', 'Helvetica');
localStorage.setItem('image', 'myCat.png');
}</pre>
<div class="note">
<p><strong>Nota</strong>: Para ver ele sendo usado em um exemplo real, consulte nosso <a href="https://github.com/mdn/web-storage-demo">Web Storage Demo</a>.</p>
</div>
<h2 id="Especificações">Especificações</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Specification</th>
<th scope="col">Status</th>
<th scope="col">Comment</th>
</tr>
<tr>
<td>{{SpecName('Web Storage', '#dom-storage-setitem', 'setItem()')}}</td>
<td>{{Spec2('Web Storage')}}</td>
<td> </td>
</tr>
</tbody>
</table>
<h2 id="Navegadores_compatíveis">Navegadores compatíveis</h2>
<p>{{ CompatibilityTable() }}</p>
<div id="compat-desktop">
<table class="compat-table">
<tbody>
<tr>
<th>Feature</th>
<th>Chrome</th>
<th>Firefox (Gecko)</th>
<th>Internet Explorer</th>
<th>Opera</th>
<th>Safari (WebKit)</th>
</tr>
<tr>
<td>localStorage</td>
<td>4</td>
<td>3.5</td>
<td>8</td>
<td>10.50</td>
<td>4</td>
</tr>
<tr>
<td>sessionStorage</td>
<td>5</td>
<td>2</td>
<td>8</td>
<td>10.50</td>
<td>4</td>
</tr>
</tbody>
</table>
</div>
<div id="compat-mobile">
<table class="compat-table">
<tbody>
<tr>
<th>Feature</th>
<th>Android</th>
<th>Firefox Mobile (Gecko)</th>
<th>IE Phone</th>
<th>Opera Mobile</th>
<th>Safari Mobile</th>
</tr>
<tr>
<td>Basic support</td>
<td>2.1</td>
<td>{{ CompatUnknown }}</td>
<td>8</td>
<td>11</td>
<td>iOS 3.2</td>
</tr>
</tbody>
</table>
</div>
<p>Todos os navegadores têm diferentes níveis de capacidade para tanto localStorage e sessionStorage. Aqui você encontra uma detalhada <a class="external" href="http://dev-test.nemikor.com/web-storage/support-test/">a </a><a href="http://dev-test.nemikor.com/web-storage/support-test/">capacidade detalhada para vários browsers</a>.</p>
<div class="note">
<p><strong>Nota: </strong>desde a versão iOS 5.1, Mobile Safari os dados na pasta 'cache' estão sujeito a limpezas ocasionais devido ao pouco espaço disponível.</p>
</div>
<h2 id="Veja_também">Veja também</h2>
<p><a href="/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API">Usando a Web Storage API</a></p>
|