📄 microsoftajax.debug.js
字号:
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <param name="item" mayBeNull="true"></param>
/// <returns type="Boolean"></returns>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true},
{name: "item", mayBeNull: true}
]);
if (e) throw e;
return (Array.indexOf(array, item) >= 0);
}
Array.dequeue = function Array$dequeue(array) {
/// <summary locid="M:J#Array.dequeue" />
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <returns mayBeNull="true"></returns>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true}
]);
if (e) throw e;
return array.shift();
}
Array.forEach = function Array$forEach(array, method, instance) {
/// <summary locid="M:J#Array.forEach" />
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <param name="method" type="Function"></param>
/// <param name="instance" optional="true" mayBeNull="true"></param>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true},
{name: "method", type: Function},
{name: "instance", mayBeNull: true, optional: true}
]);
if (e) throw e;
for (var i = 0, l = array.length; i < l; i++) {
var elt = array[i];
if (typeof(elt) !== 'undefined') method.call(instance, elt, i, array);
}
}
Array.indexOf = function Array$indexOf(array, item, start) {
/// <summary locid="M:J#Array.indexOf" />
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <param name="item" optional="true" mayBeNull="true"></param>
/// <param name="start" optional="true" mayBeNull="true"></param>
/// <returns type="Number"></returns>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true},
{name: "item", mayBeNull: true, optional: true},
{name: "start", mayBeNull: true, optional: true}
]);
if (e) throw e;
if (typeof(item) === "undefined") return -1;
var length = array.length;
if (length !== 0) {
start = start - 0;
if (isNaN(start)) {
start = 0;
}
else {
if (isFinite(start)) {
start = start - (start % 1);
}
if (start < 0) {
start = Math.max(0, length + start);
}
}
for (var i = start; i < length; i++) {
if ((typeof(array[i]) !== "undefined") && (array[i] === item)) {
return i;
}
}
}
return -1;
}
Array.insert = function Array$insert(array, index, item) {
/// <summary locid="M:J#Array.insert" />
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <param name="index" mayBeNull="true"></param>
/// <param name="item" mayBeNull="true"></param>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true},
{name: "index", mayBeNull: true},
{name: "item", mayBeNull: true}
]);
if (e) throw e;
array.splice(index, 0, item);
}
Array.parse = function Array$parse(value) {
/// <summary locid="M:J#Array.parse" />
/// <param name="value" type="String" mayBeNull="true"></param>
/// <returns type="Array" elementMayBeNull="true"></returns>
var e = Function._validateParams(arguments, [
{name: "value", type: String, mayBeNull: true}
]);
if (e) throw e;
if (!value) return [];
var v = eval(value);
if (!Array.isInstanceOfType(v)) throw Error.argument('value', Sys.Res.arrayParseBadFormat);
return v;
}
Array.remove = function Array$remove(array, item) {
/// <summary locid="M:J#Array.remove" />
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <param name="item" mayBeNull="true"></param>
/// <returns type="Boolean"></returns>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true},
{name: "item", mayBeNull: true}
]);
if (e) throw e;
var index = Array.indexOf(array, item);
if (index >= 0) {
array.splice(index, 1);
}
return (index >= 0);
}
Array.removeAt = function Array$removeAt(array, index) {
/// <summary locid="M:J#Array.removeAt" />
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <param name="index" mayBeNull="true"></param>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true},
{name: "index", mayBeNull: true}
]);
if (e) throw e;
array.splice(index, 1);
}
if (!window) this.window = this;
window.Type = Function;
Type.__fullyQualifiedIdentifierRegExp = new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]([^ \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*[^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\])?$", "i");
Type.__identifierRegExp = new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\][^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*$", "i");
Type.prototype.callBaseMethod = function Type$callBaseMethod(instance, name, baseArguments) {
/// <summary locid="M:J#Type.callBaseMethod" />
/// <param name="instance"></param>
/// <param name="name" type="String"></param>
/// <param name="baseArguments" type="Array" optional="true" mayBeNull="true" elementMayBeNull="true"></param>
/// <returns></returns>
var e = Function._validateParams(arguments, [
{name: "instance"},
{name: "name", type: String},
{name: "baseArguments", type: Array, mayBeNull: true, optional: true, elementMayBeNull: true}
]);
if (e) throw e;
var baseMethod = this.getBaseMethod(instance, name);
if (!baseMethod) throw Error.invalidOperation(String.format(Sys.Res.methodNotFound, name));
if (!baseArguments) {
return baseMethod.apply(instance);
}
else {
return baseMethod.apply(instance, baseArguments);
}
}
Type.prototype.getBaseMethod = function Type$getBaseMethod(instance, name) {
/// <summary locid="M:J#Type.getBaseMethod" />
/// <param name="instance"></param>
/// <param name="name" type="String"></param>
/// <returns type="Function" mayBeNull="true"></returns>
var e = Function._validateParams(arguments, [
{name: "instance"},
{name: "name", type: String}
]);
if (e) throw e;
if (!this.isInstanceOfType(instance)) throw Error.argumentType('instance', Object.getType(instance), this);
var baseType = this.getBaseType();
if (baseType) {
var baseMethod = baseType.prototype[name];
return (baseMethod instanceof Function) ? baseMethod : null;
}
return null;
}
Type.prototype.getBaseType = function Type$getBaseType() {
/// <summary locid="M:J#Type.getBaseType" />
/// <returns type="Type" mayBeNull="true"></returns>
if (arguments.length !== 0) throw Error.parameterCount();
return (typeof(this.__baseType) === "undefined") ? null : this.__baseType;
}
Type.prototype.getInterfaces = function Type$getInterfaces() {
/// <summary locid="M:J#Type.getInterfaces" />
/// <returns type="Array" elementType="Type" mayBeNull="false" elementMayBeNull="false"></returns>
if (arguments.length !== 0) throw Error.parameterCount();
var result = [];
var type = this;
while(type) {
var interfaces = type.__interfaces;
if (interfaces) {
for (var i = 0, l = interfaces.length; i < l; i++) {
var interfaceType = interfaces[i];
if (!Array.contains(result, interfaceType)) {
result[result.length] = interfaceType;
}
}
}
type = type.__baseType;
}
return result;
}
Type.prototype.getName = function Type$getName() {
/// <summary locid="M:J#Type.getName" />
/// <returns type="String"></returns>
if (arguments.length !== 0) throw Error.parameterCount();
return (typeof(this.__typeName) === "undefined") ? "" : this.__typeName;
}
Type.prototype.implementsInterface = function Type$implementsInterface(interfaceType) {
/// <summary locid="M:J#Type.implementsInterface" />
/// <param name="interfaceType" type="Type"></param>
/// <returns type="Boolean"></returns>
var e = Function._validateParams(arguments, [
{name: "interfaceType", type: Type}
]);
if (e) throw e;
this.resolveInheritance();
var interfaceName = interfaceType.getName();
var cache = this.__interfaceCache;
if (cache) {
var cacheEntry = cache[interfaceName];
if (typeof(cacheEntry) !== 'undefined') return cacheEntry;
}
else {
cache = this.__interfaceCache = {};
}
var baseType = this;
while (baseType) {
var interfaces = baseType.__interfaces;
if (interfaces) {
if (Array.indexOf(interfaces, interfaceType) !== -1) {
return cache[interfaceName] = true;
}
}
baseType = baseType.__baseType;
}
return cache[interfaceName] = false;
}
Type.prototype.inheritsFrom = function Type$inheritsFrom(parentType) {
/// <summary locid="M:J#Type.inheritsFrom" />
/// <param name="parentType" type="Type"></param>
/// <returns type="Boolean"></returns>
var e = Function._validateParams(arguments, [
{name: "parentType", type: Type}
]);
if (e) throw e;
this.resolveInheritance();
var baseType = this.__baseType;
while (baseType) {
if (baseType === parentType) {
return true;
}
baseType = baseType.__baseType;
}
return false;
}
Type.prototype.initializeBase = function Type$initializeBase(instance, baseArguments) {
/// <summary locid="M:J#Type.initializeBase" />
/// <param name="instance"></param>
/// <param name="baseArguments" type="Array" optional="true" mayBeNull="true" elementMayBeNull="true"></param>
/// <returns></returns>
var e = Function._validateParams(arguments, [
{name: "instance"},
{name: "baseArguments", type: Array, mayBeNull: true, optional: true, elementMayBeNull: true}
]);
if (e) throw e;
if (!this.isInstanceOfType(instance)) throw Error.argumentType('instance', Object.getType(instance), this);
this.resolveInheritance();
if (this.__baseType) {
if (!baseArguments) {
this.__baseType.apply(instance);
}
else {
this.__baseType.apply(instance, baseArguments);
}
}
return instance;
}
Type.prototype.isImplementedBy = function Type$isImplementedBy(instance) {
/// <summary locid="M:J#Type.isImplementedBy" />
/// <param name="instance" mayBeNull="true"></param>
/// <returns type="Boolean"></returns>
var e = Function._validateParams(arguments, [
{name: "instance", mayBeNull: true}
]);
if (e) throw e;
if (typeof(instance) === "undefined" || instance === null) return false;
var instanceType = Object.getType(instance);
return !!(instanceType.implementsInterface && instanceType.implementsInterface(this));
}
Type.prototype.isInstanceOfType = function Type$isInstanceOfType(instance) {
/// <summary locid="M:J#Type.isInstanceOfType" />
/// <param name="instance" mayBeNull="true"></param>
/// <returns type="Boolean"></returns>
var e = Function._validateParams(arguments, [
{name: "instance", mayBeNull: true}
]);
if (e) throw e;
if (typeof(instance) === "undefined" || instance === null) return false;
if (instance instanceof this) return true;
var instanceType = Object.getType(instance);
return !!(instanceType === this) ||
(instanceType.inheritsFrom && instanceType.inheritsFrom(this)) ||
(instanceType.implementsInterface && instanceType.implementsInterface(this));
}
Type.prototype.registerClass = function Type$registerClass(typeName, baseType, interfaceTypes) {
/// <summary locid="M:J#Type.registerClass" />
/// <param name="typeName" type="String"></param>
/// <param name="baseType" type="Type" optional="true" mayBeNull="true"></param>
/// <param name="interfaceTypes" parameterArray="true" type="Type"></param>
/// <returns type="Type"></returns>
var e = Function._validateParams(arguments, [
{name: "typeName", type: String},
{name: "baseType", type: Type, mayBeNull: true, optional: true},
{name: "interfaceTypes", type: Type, parameterArray: true}
]);
if (e) throw e;
if (!Type.__fullyQualifiedIdentifierRegExp.test(typeName)) throw Error.argument('typeName', Sys.Res.notATypeName);
var parsedName;
try {
parsedName = eval(typeName);
}
catch(e) {
throw Error.argument('typeName', Sys.Res.argumentTypeName);
}
if (parsedName !== this) throw Error.argument('typeName', Sys.Res.badTypeName);
if (Sys.__registeredTypes[typeName]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, typeName));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -