Основные типы данных:Доступ к значениям, который позволяет управлять фактическим значением, сохранённым в переменной. Значения базового типа относятся к простым сегментам данных.
Существует пять основных типов данных:Undefined、Null、String、Number、Boolean。
Тип цитирования:При копировании переменной объекта это референс объекта, который обрабатывается, но при добавлении свойств к объекту обрабатывается сам объект. Значения типов референса — это объекты, которые могут состоять из нескольких значений.
Существует несколько типов цитат:object, array, RegExp, Date, Function, специальные базовые типы обёрток (String, Number, Boolean) и монолитные встроенные объекты (Global, Math).
Для разницы между значениями базового типа и значениями эталонного типа:
(1)Значения эталонного типа добавляют свойства и методы, тогда как базовые значения не могут。
(2)При копировании значения переменной базовый тип создаёт новое значение на объекте переменной и копирует его в новую переменную. С тех пор,Любое действие этих двух переменных не влияет на другую; Тип ссылки — копировать копию значения, хранящегося в объекте переменной, в новую переменную, но значение обеих переменных указывает на объект, хранящийся в куче, то есть они фактически относятся к одному и тому же объекту.Изменение одной переменной влияет на другую。
Ссылка на значения типов, используя массив в качестве примера:
Пропускаемые параметры: Pass by value, скопируйте значение вне функции в параметр внутри функции (локальную переменную), при работе локальной переменной изменение локальной переменной отражается за пределами функции, но это не влияет на значение вне функции.
Конечно, при использовании объектов бывает сложно понять:
Очевидно, что параметры передаются по значениям, так почему созданный экземпляр p может также получить добавление атрибута имени в setName()?
Поскольку obj и p относятся к одному и тому же объекту, obj будет обращаться к тому же объекту по ссылке, даже если он передаётся по value. Посмотрите на пример ниже, чтобы всё было понятно.
Перепишите объект obj внутри функции, в данный момент объект obj ссылается на локальный объект, а внешний p остаётся исходной ссылкой, поэтому он не изменится.
Виды анализов:
typeof:确定变量是字符串、数值、布尔值还是undefined的最佳工具。
экземпляр: Определить, является ли это типом объекта.
|