mirror of
https://github.com/swc-project/swc.git
synced 2024-12-22 13:11:31 +03:00
41 lines
1014 B
TypeScript
41 lines
1014 B
TypeScript
|
// Loaded from https://deno.land/x/ramda@v0.27.2/source/hasIn.js
|
||
|
|
||
|
|
||
|
import _curry2 from './internal/_curry2.js';
|
||
|
import isNil from './isNil.js';
|
||
|
|
||
|
|
||
|
/**
|
||
|
* Returns whether or not an object or its prototype chain has a property with
|
||
|
* the specified name
|
||
|
*
|
||
|
* @func
|
||
|
* @memberOf R
|
||
|
* @since v0.7.0
|
||
|
* @category Object
|
||
|
* @sig s -> {s: x} -> Boolean
|
||
|
* @param {String} prop The name of the property to check for.
|
||
|
* @param {Object} obj The object to query.
|
||
|
* @return {Boolean} Whether the property exists.
|
||
|
* @example
|
||
|
*
|
||
|
* function Rectangle(width, height) {
|
||
|
* this.width = width;
|
||
|
* this.height = height;
|
||
|
* }
|
||
|
* Rectangle.prototype.area = function() {
|
||
|
* return this.width * this.height;
|
||
|
* };
|
||
|
*
|
||
|
* const square = new Rectangle(2, 2);
|
||
|
* R.hasIn('width', square); //=> true
|
||
|
* R.hasIn('area', square); //=> true
|
||
|
*/
|
||
|
var hasIn = _curry2(function hasIn(prop, obj) {
|
||
|
if (isNil(obj)) {
|
||
|
return false;
|
||
|
}
|
||
|
return prop in obj;
|
||
|
});
|
||
|
export default hasIn;
|