\begin{quote}
Delete nested properties from an object using dot notation. \end{quote}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31526}{}\doxysection{Install}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31526}
Install with \href{https://www.npmjs.com/}{\texttt{ npm}}\+:


\begin{DoxyCode}{0}
\DoxyCodeLine{\$ npm install -\/-\/save unset-\/value }

\end{DoxyCode}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31527}{}\doxysection{Usage}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31527}

\begin{DoxyCode}{0}
\DoxyCodeLine{var unset = require('unset-\/value');}
\DoxyCodeLine{}
\DoxyCodeLine{var obj = \{a: \{b: \{c: 'd', e: 'f'\}\}\};}
\DoxyCodeLine{unset(obj, 'a.b.c');}
\DoxyCodeLine{console.log(obj);}
\DoxyCodeLine{//=> \{a: \{b: \{e: 'f'\}\}\}; }

\end{DoxyCode}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31528}{}\doxysection{Examples}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31528}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31529}{}\doxysubsection{Updates the object when a property is deleted}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31529}

\begin{DoxyCode}{0}
\DoxyCodeLine{var obj = \{a: 'b'\};}
\DoxyCodeLine{unset(obj, 'a');}
\DoxyCodeLine{console.log(obj);}
\DoxyCodeLine{//=> \{\} }

\end{DoxyCode}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31530}{}\doxysubsection{Returns true when a property is deleted}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31530}

\begin{DoxyCode}{0}
\DoxyCodeLine{unset(\{a: 'b'\}, 'a') // true }

\end{DoxyCode}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31531}{}\doxysubsection{Returns $<$tt$>$true$<$/tt$>$ when a property does not exist}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31531}
This is consistent with {\ttfamily delete} behavior in that it does not throw when a property does not exist.


\begin{DoxyCode}{0}
\DoxyCodeLine{unset(\{a: \{b: \{c: 'd'\}\}\}, 'd') // true }

\end{DoxyCode}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31532}{}\doxysubsection{delete nested values}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31532}

\begin{DoxyCode}{0}
\DoxyCodeLine{var one = \{a: \{b: \{c: 'd'\}\}\};}
\DoxyCodeLine{unset(one, 'a.b');}
\DoxyCodeLine{console.log(one);}
\DoxyCodeLine{//=> \{a: \{\}\}}
\DoxyCodeLine{}
\DoxyCodeLine{var two = \{a: \{b: \{c: 'd'\}\}\};}
\DoxyCodeLine{unset(two, 'a.b.c');}
\DoxyCodeLine{console.log(two);}
\DoxyCodeLine{//=> \{a: \{b: \{\}\}\}}
\DoxyCodeLine{}
\DoxyCodeLine{var three = \{a: \{b: \{c: 'd', e: 'f'\}\}\};}
\DoxyCodeLine{unset(three, 'a.b.c');}
\DoxyCodeLine{console.log(three);}
\DoxyCodeLine{//=> \{a: \{b: \{e: 'f'\}\}\} }

\end{DoxyCode}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31533}{}\doxysubsection{throws on invalid args}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31533}

\begin{DoxyCode}{0}
\DoxyCodeLine{unset();}
\DoxyCodeLine{// 'expected an object.' }

\end{DoxyCode}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31534}{}\doxysection{About}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31534}
\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31535}{}\doxysubsection{Related projects}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31535}

\begin{DoxyItemize}
\item \href{https://www.npmjs.com/package/get-value}{\texttt{ get-\/value}}\+: Use property paths ({\ttfamily a.\+b.\+c}) to get a nested value from an object. $\vert$ \mbox{[}homepage\mbox{]}(\href{https://github.com/jonschlinkert/get-value}{\texttt{ https\+://github.\+com/jonschlinkert/get-\/value}} \char`\"{}\+Use property paths (\`{}a.\+b.\+c\`{}) to get a nested value from an object.\char`\"{})
\item \href{https://www.npmjs.com/package/get-values}{\texttt{ get-\/values}}\+: Return an array of all values from the given object. $\vert$ \href{https://github.com/jonschlinkert/get-values}{\texttt{ homepage}}
\item \href{https://www.npmjs.com/package/omit-value}{\texttt{ omit-\/value}}\+: Omit properties from an object or deeply nested property of an object using object path… \href{https://github.com/jonschlinkert/omit-value}{\texttt{ more}} $\vert$ \href{https://github.com/jonschlinkert/omit-value}{\texttt{ homepage}}
\item \href{https://www.npmjs.com/package/put-value}{\texttt{ put-\/value}}\+: Update only existing values from an object, works with dot notation paths like {\ttfamily a.\+b.\+c} and… \href{https://github.com/tunnckocore/put-value\#readme}{\texttt{ more}} $\vert$ \href{https://github.com/tunnckocore/put-value\#readme}{\texttt{ homepage}}
\item \href{https://www.npmjs.com/package/set-value}{\texttt{ set-\/value}}\+: Create nested values and any intermediaries using dot notation (`\textquotesingle{}a.\+b.\+c'{\ttfamily ) paths. $\vert$ \mbox{[}homepage\mbox{]}(\href{https://github.com/jonschlinkert/set-value}{\texttt{ https\+://github.\+com/jonschlinkert/set-\/value}} \char`\"{}\+Create nested values and any intermediaries using dot notation ($<$/tt$>$\textquotesingle{}a.\+b.\+c\textquotesingle{}\`{}) paths.\char`\"{})}
\item {\ttfamily \mbox{[}union-\/value\mbox{]}(\href{https://www.npmjs.com/package/union-value}{\texttt{ https\+://www.\+npmjs.\+com/package/union-\/value}})\+: Set an array of unique values as the property of an object. Supports setting deeply… \mbox{[}more\mbox{]}(\href{https://github.com/jonschlinkert/union-value}{\texttt{ https\+://github.\+com/jonschlinkert/union-\/value}}) $\vert$ \mbox{[}homepage\mbox{]}(\href{https://github.com/jonschlinkert/union-value}{\texttt{ https\+://github.\+com/jonschlinkert/union-\/value}} \char`\"{}\+Set an array of unique values as the property of an object. Supports setting deeply nested properties using using object-\/paths/dot notation.\char`\"{})}
\item {\ttfamily \mbox{[}upsert-\/value\mbox{]}(\href{https://www.npmjs.com/package/upsert-value}{\texttt{ https\+://www.\+npmjs.\+com/package/upsert-\/value}})\+: Update or set nested values and any intermediaries with dot notation (\`{}\textquotesingle{}a.\+b.\+c\textquotesingle{}\`{}) paths. $\vert$ \mbox{[}homepage\mbox{]}(\href{https://github.com/doowb/upsert-value}{\texttt{ https\+://github.\+com/doowb/upsert-\/value}} \char`\"{}\+Update or set nested values and any intermediaries with dot notation (`\textquotesingle{}a.\+b.\+c'\`{}) paths.\char`\"{})}
\end{DoxyItemize}

{\ttfamily }\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31536}{}\doxysubsection{Contributing}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31536}
{\ttfamily  Pull requests and stars are always welcome. For bugs and feature requests, \href{../../issues/new}{\texttt{ please create an issue}}.}

{\ttfamily }\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31537}{}\doxysubsection{Contributors}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31537}
{\ttfamily  \tabulinesep=1mm
\begin{longtabu}spread 0pt [c]{*{2}{|X[-1]}|}
\hline
\PBS\centering \cellcolor{\tableheadbgcolor}\textbf{ {\bfseries{Commits}}   }&\PBS\centering \cellcolor{\tableheadbgcolor}\textbf{ {\bfseries{Contributor}}    }\\\cline{1-2}
\endfirsthead
\hline
\endfoot
\hline
\PBS\centering \cellcolor{\tableheadbgcolor}\textbf{ {\bfseries{Commits}}   }&\PBS\centering \cellcolor{\tableheadbgcolor}\textbf{ {\bfseries{Contributor}}    }\\\cline{1-2}
\endhead
6   &\href{https://github.com/jonschlinkert}{\texttt{ jonschlinkert}}    \\\cline{1-2}
2   &\href{https://github.com/wtgtybhertgeghgtwtg}{\texttt{ wtgtybhertgeghgtwtg}}   \\\cline{1-2}
\end{longtabu}
}

{\ttfamily }\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31538}{}\doxysubsection{Building docs}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31538}
{\ttfamily  \+\_\+(This project\textquotesingle{}s readme.\+md is generated by \href{https://github.com/verbose/verb-generate-readme}{\texttt{ verb}}, please don\textquotesingle{}t edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)\+\_\+}

{\ttfamily To generate the readme, run the following command\+:}

{\ttfamily 
\begin{DoxyCode}{0}
\DoxyCodeLine{\$ npm install -\/g verbose/verb\#dev verb-\/generate-\/readme \&\& verb }

\end{DoxyCode}
}

{\ttfamily }\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31539}{}\doxysubsection{Running tests}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31539}
{\ttfamily  Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command\+:}

{\ttfamily 
\begin{DoxyCode}{0}
\DoxyCodeLine{\$ npm install \&\& npm test }

\end{DoxyCode}
}

{\ttfamily }\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31540}{}\doxysubsection{Author}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31540}
{\ttfamily  {\bfseries{Jon Schlinkert}}}

{\ttfamily 
\begin{DoxyItemize}
\item \href{https://github.com/jonschlinkert}{\texttt{ github/jonschlinkert}}
\item \href{https://twitter.com/jonschlinkert}{\texttt{ twitter/jonschlinkert}}
\end{DoxyItemize}}

{\ttfamily }\hypertarget{md_sfcode_node_modules_unset_value_README_autotoc_md31541}{}\doxysubsection{License}\label{md_sfcode_node_modules_unset_value_README_autotoc_md31541}
{\ttfamily  Copyright © 2017, \href{https://github.com/jonschlinkert}{\texttt{ Jon Schlinkert}}. Released under the \mbox{[}MIT License\mbox{]}(LICENSE).}

{\ttfamily \DoxyHorRuler{0}
}

{\ttfamily {\itshape This file was generated by \href{https://github.com/verbose/verb-generate-readme}{\texttt{ verb-\/generate-\/readme}}, v0.\+4.\+2, on February 25, 2017.} }