📄 microsoftajax.debug.js
字号:
if (!valueStr.match(numberFormatRegex)) {
return Number.NaN;
}
valueStr = valueStr.split(grpSeparator).join("");
valueStr = valueStr.replace(decSeparator, ".");
return parseFloat(valueStr);
}
Number.prototype.format = function Number$format(format) {
/// <param name="format" type="String"></param>
/// <returns type="String"></returns>
var e = Function._validateParams(arguments, [
{name: "format", type: String}
]);
if (e) throw e;
return this._toFormattedString(format, Sys.CultureInfo.InvariantCulture);
}
Number.prototype.localeFormat = function Number$localeFormat(format) {
/// <param name="format" type="String"></param>
/// <returns type="String"></returns>
var e = Function._validateParams(arguments, [
{name: "format", type: String}
]);
if (e) throw e;
return this._toFormattedString(format, Sys.CultureInfo.CurrentCulture);
}
Number.prototype._toFormattedString = function Number$_toFormattedString(format, cultureInfo) {
if (!format || (format.length === 0) || (format === 'i')) {
if (cultureInfo && (cultureInfo.name.length > 0)) {
return this.toLocaleString();
}
else {
return this.toString();
}
}
var _percentPositivePattern = ["n %", "n%", "%n" ];
var _percentNegativePattern = ["-n %", "-n%", "-%n"];
var _numberNegativePattern = ["(n)","-n","- n","n-","n -"];
var _currencyPositivePattern = ["$n","n$","$ n","n $"];
var _currencyNegativePattern = ["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];
function expandNumber(number, precision, groupSizes, sep, decimalChar) {
var curSize = groupSizes[0];
var curGroupIndex = 1;
var numberString = number.toString();
var right = "";
var exponent = "";
var decimalSplit = numberString.split('.');
if (decimalSplit.length > 1) {
numberString = decimalSplit[0];
right = decimalSplit[1];
var exponentSplit = right.split(/e/i);
if (exponentSplit.length > 1) {
right = exponentSplit[0];
exponent = "e" + exponentSplit[1];
}
}
if (precision > 0) {
var rightDifference = right.length - precision;
if (rightDifference > 0) {
right = right.slice(0, precision);
} else if (rightDifference < 0) {
for (var i=0; i<Math.abs(rightDifference); i++) {
right += '0';
}
}
right = decimalChar + right;
}
else { right = "";
}
right += exponent;
var stringIndex = numberString.length-1;
var ret = "";
while (stringIndex >= 0) {
if (curSize === 0 || curSize > stringIndex) {
if (ret.length > 0)
return numberString.slice(0, stringIndex + 1) + sep + ret + right;
else
return numberString.slice(0, stringIndex + 1) + right;
}
if (ret.length > 0)
ret = numberString.slice(stringIndex - curSize + 1, stringIndex+1) + sep + ret;
else
ret = numberString.slice(stringIndex - curSize + 1, stringIndex+1);
stringIndex -= curSize;
if (curGroupIndex < groupSizes.length) {
curSize = groupSizes[curGroupIndex];
curGroupIndex++;
}
}
return numberString.slice(0, stringIndex + 1) + sep + ret + right;
}
var nf = cultureInfo.numberFormat;
var number = Math.abs(this);
if (!format)
format = "D";
var precision = -1;
if (format.length > 1) precision = parseInt(format.slice(1));
var pattern;
switch (format.charAt(0)) {
case "d":
case "D":
pattern = 'n';
if (precision !== -1) {
var numberStr = ""+number;
var zerosToAdd = precision - numberStr.length;
if (zerosToAdd > 0) {
for (var i=0; i<zerosToAdd; i++) {
numberStr = '0'+numberStr;
}
}
number = numberStr;
}
if (this < 0) number = -number;
break;
case "c":
case "C":
if (this < 0) pattern = _currencyNegativePattern[nf.CurrencyNegativePattern];
else pattern = _currencyPositivePattern[nf.CurrencyPositivePattern];
if (precision === -1) precision = nf.CurrencyDecimalDigits;
number = expandNumber(Math.abs(this), precision, nf.CurrencyGroupSizes, nf.CurrencyGroupSeparator, nf.CurrencyDecimalSeparator);
break;
case "n":
case "N":
if (this < 0) pattern = _numberNegativePattern[nf.NumberNegativePattern];
else pattern = 'n';
if (precision === -1) precision = nf.NumberDecimalDigits;
number = expandNumber(Math.abs(this), precision, nf.NumberGroupSizes, nf.NumberGroupSeparator, nf.NumberDecimalSeparator);
break;
case "p":
case "P":
if (this < 0) pattern = _percentNegativePattern[nf.PercentNegativePattern];
else pattern = _percentPositivePattern[nf.PercentPositivePattern];
if (precision === -1) precision = nf.PercentDecimalDigits;
number = expandNumber(Math.abs(this), precision, nf.PercentGroupSizes, nf.PercentGroupSeparator, nf.PercentDecimalSeparator);
break;
default:
throw Error.format(Sys.Res.formatBadFormatSpecifier);
}
var regex = /n|\$|-|%/g;
var ret = "";
for (;;) {
var index = regex.lastIndex;
var ar = regex.exec(pattern);
ret += pattern.slice(index, ar ? ar.index : pattern.length);
if (!ar)
break;
switch (ar[0]) {
case "n":
ret += number;
break;
case "$":
ret += nf.CurrencySymbol;
break;
case "-":
ret += nf.NegativeSign;
break;
case "%":
ret += nf.PercentSymbol;
break;
}
}
return ret;
}
RegExp.__typeName = 'RegExp';
RegExp.__class = true;
Array.__typeName = 'Array';
Array.__class = true;
Array.add = Array.enqueue = function Array$enqueue(array, item) {
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <param name="item" mayBeNull="true"></param>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true},
{name: "item", mayBeNull: true}
]);
if (e) throw e;
array[array.length] = item;
}
Array.addRange = function Array$addRange(array, items) {
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <param name="items" type="Array" elementMayBeNull="true"></param>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true},
{name: "items", type: Array, elementMayBeNull: true}
]);
if (e) throw e;
array.push.apply(array, items);
}
Array.clear = function Array$clear(array) {
/// <param name="array" type="Array" elementMayBeNull="true"></param>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true}
]);
if (e) throw e;
array.length = 0;
}
Array.clone = function Array$clone(array) {
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <returns type="Array" elementMayBeNull="true"></returns>
var e = Function._validateParams(arguments, [
{name: "array", type: Array, elementMayBeNull: true}
]);
if (e) throw e;
if (array.length === 1) {
return [array[0]];
}
else {
return Array.apply(null, array);
}
}
Array.contains = function Array$contains(array, item) {
/// <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) {
/// <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) {
/// <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) {
/// <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) {
/// <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) {
/// <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) {
/// <param name="array" type="Array" elementMayBeNull="true"></param>
/// <param name="item" mayBeNull="true"></param>
/// <returns type="Boolea
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -