當前位置: 首頁>>代碼示例>>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;未經允許,請勿轉載。