当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript object.assign函数代码示例

本文整理汇总了TypeScript中@dojo/shim/object.assign函数的典型用法代码示例。如果您正苦于以下问题:TypeScript assign函数的具体用法?TypeScript assign怎么用?TypeScript assign使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了assign函数的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: createValuePropertyDescriptor

/**
 * A function that produces a value property descriptor, which assumes that properties are enumerable, writable and configurable
 * unless specified
 *
 * @param value The value for the descriptor
 * @param writable Defaults to `true` if not specified
 * @param enumerable Defaults to `true` if not specified
 * @param configurable Defaults to `true` if not specified
 */
function createValuePropertyDescriptor(value: any, writable: boolean = true, enumerable: boolean = true, configurable: boolean = true): PropertyDescriptor {
	return assign(objectCreate(null), {
		value,
		writable,
		enumerable,
		configurable
	});
}
开发者ID:bryanforbes,项目名称:core,代码行数:17,代码来源:compare.ts

示例2: patchConstruct

function patchConstruct(target: any, record: ConstructRecord): any {
	const { args, descriptor = defaultConstructDescriptor, Ctor, name, propertyRecords } = record;
	const value = new Ctor(...(args || []));
	if (propertyRecords) {
		propertyRecords.forEach((record) => isConstructRecord(record) ? patchConstruct(value, record) : patchPatch(value, record));
	}
	defineProperty(target, name, assign({ value }, descriptor));
	return target;
}
开发者ID:bryanforbes,项目名称:core,代码行数:9,代码来源:compare.ts

示例3: createConstructRecord

export function createConstructRecord(Ctor: Constructor, args?: any[], descriptor?: ConstructDescriptor): AnonymousConstructRecord {
	const record: AnonymousConstructRecord = assign(objectCreate(null), { Ctor });
	if (args) {
		record.args = args;
	}
	if (descriptor) {
		record.descriptor = descriptor;
	}
	return record;
}
开发者ID:bryanforbes,项目名称:core,代码行数:10,代码来源:compare.ts

示例4: createSpliceRecord

/**
 * An internal function that returns a new splice record
 *
 * @param start Where in the array to start the splice
 * @param deleteCount The number of elements to delete from the array
 * @param add Elements to be added to the target
 */
function createSpliceRecord(start: number, deleteCount: number, add?: any[]): SpliceRecord {
	const spliceRecord: SpliceRecord = assign(objectCreate(null), {
		type: 'splice',
		start,
		deleteCount
	});

	if (add && add.length) {
		spliceRecord.add = add;
	}

	return spliceRecord;
}
开发者ID:jason0x43,项目名称:core,代码行数:20,代码来源:compare.ts

示例5: createPatchRecord

/* tslint:enable:variable-name */

/**
 * An internal function that returns a new patch record
 *
 * @param type The type of patch record
 * @param name The property name the record refers to
 * @param descriptor The property descriptor to be installed on the object
 * @param valueRecords Any subsequenet patch recrds to be applied to the value of the descriptor
 */
function createPatchRecord(type: PatchTypes, name: string, descriptor?: PropertyDescriptor, valueRecords?: (ConstructRecord | PatchRecord | SpliceRecord)[]): PatchRecord {
	const patchRecord = assign(objectCreate(null), {
		type,
		name
	});

	if (descriptor) {
		patchRecord.descriptor = descriptor;
	}
	if (valueRecords) {
		patchRecord.valueRecords = valueRecords;
	}

	return patchRecord as PatchRecord;
}
开发者ID:bryanforbes,项目名称:core,代码行数:25,代码来源:compare.ts

示例6: diff

	/**
	 * Get the difference of the `value`
	 * @param value The value to diff
	 * @param nameOrIndex A `string` if comparing a property or a `number` if comparing an array element
	 * @param parent The outer parent that this value is part of
	 */
	diff(value: T, nameOrIndex: string | number, parent: object): ConstructRecord | void {
		const record = this._differ(value, nameOrIndex, parent);
		if (record && typeof nameOrIndex === 'string') {
			return assign(record, { name: nameOrIndex });
		}
	}
开发者ID:jason0x43,项目名称:core,代码行数:12,代码来源:compare.ts


注:本文中的@dojo/shim/object.assign函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。