function getOwnPropertyDescriptor( value, property ) {
	if ( hasOwnProp( value, property ) ) {
		return {
			'configurable': true,
			'enumerable': true,
			'writable': true,
			'value': value[ property ]
		};
	}
	return null;
}
Returns a property descriptor for an object's own property.

## Notes

-   In contrast to the built-in `Object.getOwnPropertyDescriptor()`, this function returns `null` if provided `undefined` or `null`, rather than throwing an error.
-   In contrast to the built-in `Object.getOwnPropertyDescriptor()`, this function returns `null` if an object does not have a provided property, rather than `undefined`.
-   In environments lacking `Object.getOwnPropertyDescriptor()` support, property descriptors do not exist. In non-supporting environment, if an object has a provided property, this function returns a descriptor object equivalent to that returned in a supporting environment; otherwise, the function returns `null`.

@private
@param {*} value - input object
@param {(string|symbol)} property - property
@returns {(Object|null)} property descriptor or null

@example
var obj = {
    'beep': 'boop',
    'foo': 3.14
};

var desc = getOwnPropertyDescriptor( obj, 'foo' );
// returns {'configurable':true,'enumerable':true,'writable':true,'value':3.14}