0 added
2 removed
Original
2026-01-01
Modified
2026-02-26
1
<h2>Ответы</h2>
1
<h2>Ответы</h2>
2
-
<p>4</p>
3
<p>Еще пара способов:</p>
2
<p>Еще пара способов:</p>
4
<ul><li>Использование метода Object.prototype.toString():</li>
3
<ul><li>Использование метода Object.prototype.toString():</li>
5
</ul><ul><li>Использование оператора instanceof:</li>
4
</ul><ul><li>Использование оператора instanceof:</li>
6
</ul><p>Самый простой способ проверить, что переменная является объектом, это проверить тип переменной с помощью typeof. Для объектов эта инструкция вернёт строку 'object'.</p>
5
</ul><p>Самый простой способ проверить, что переменная является объектом, это проверить тип переменной с помощью typeof. Для объектов эта инструкция вернёт строку 'object'.</p>
7
<p>Например:</p>
6
<p>Например:</p>
8
<p>Стоит учитывать, что для null значение будет тоже 'object', так как в системе типов JS null является объектом.</p>
7
<p>Стоит учитывать, что для null значение будет тоже 'object', так как в системе типов JS null является объектом.</p>
9
-
<p>1</p>
10
<p>В javascript оператор typeof возвращает 'object' не только для классических объектов {}, но и для массивов и null:</p>
8
<p>В javascript оператор typeof возвращает 'object' не только для классических объектов {}, но и для массивов и null:</p>
11
<p>[null, [], {}].map(value => typeof value) [ 'object', 'object', 'object' ]</p>
9
<p>[null, [], {}].map(value => typeof value) [ 'object', 'object', 'object' ]</p>
12
<p>Поэтому, скажем так, "классический" способ проверки, что перед вами точно объект, а не массив или null такой:</p>
10
<p>Поэтому, скажем так, "классический" способ проверки, что перед вами точно объект, а не массив или null такой:</p>
13
<p>typeof x === 'object' && !Array.isArray(x) && x !== null</p>
11
<p>typeof x === 'object' && !Array.isArray(x) && x !== null</p>
14
<p>Во всяком случае, это код набрал наибольшее количество звезд на stackoverflow.</p>
12
<p>Во всяком случае, это код набрал наибольшее количество звезд на stackoverflow.</p>