mirror of
https://github.com/modernw/App-Installer-For-Windows-8.x-Reset.git
synced 2026-04-11 17:57:19 +10:00
Fixed download bug.
This commit is contained in:
174
shared/html/js/string.js
Normal file
174
shared/html/js/string.js
Normal file
@@ -0,0 +1,174 @@
|
||||
// 判断是否已存在,不存在则添加
|
||||
(function() {
|
||||
// 定义判断函数
|
||||
var isDefined = function(value) {
|
||||
// 先用 typeof !== "undefined" 判断
|
||||
if (typeof value !== "undefined") {
|
||||
// 然后用 value !== void 0 判断
|
||||
if (value !== void 0) {
|
||||
// 然后用 value !== null 判断
|
||||
if (value !== null) {
|
||||
// 判断是否不是空文本时再加上 value != ""
|
||||
if (value != "") {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
// 1. trim 方法
|
||||
if (typeof String.prototype.trim === "undefined") {
|
||||
String.prototype.trim = function() {
|
||||
// 严格按题目要求进行判断
|
||||
if (typeof this !== "undefined" &&
|
||||
this !== void 0 &&
|
||||
this !== null) {
|
||||
return this.replace(/^\s+|\s+$/g, '');
|
||||
}
|
||||
return this;
|
||||
};
|
||||
}
|
||||
|
||||
// 2. tolower 方法(小写化)
|
||||
if (typeof String.prototype.tolower === "undefined") {
|
||||
String.prototype.tolower = function() {
|
||||
// 按题目要求进行判断
|
||||
if (!isDefined(this)) {
|
||||
return this;
|
||||
}
|
||||
// 注意:标准的 toLowerCase 方法已经存在
|
||||
// 这里我们实现一个兼容版本
|
||||
var result = '';
|
||||
var charCode;
|
||||
|
||||
for (var i = 0; i < this.length; i++) {
|
||||
charCode = this.charCodeAt(i);
|
||||
// A-Z 的 ASCII 范围是 65-90
|
||||
if (charCode >= 65 && charCode <= 90) {
|
||||
// 转换为小写:加上 32
|
||||
result += String.fromCharCode(charCode + 32);
|
||||
} else {
|
||||
result += this.charAt(i);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
};
|
||||
}
|
||||
|
||||
// 3. toupper 方法(大写化)
|
||||
if (typeof String.prototype.toupper === "undefined") {
|
||||
String.prototype.toupper = function() {
|
||||
// 按题目要求进行判断
|
||||
if (!isDefined(this)) {
|
||||
return this;
|
||||
}
|
||||
// 注意:标准的 toUpperCase 方法已经存在
|
||||
// 这里我们实现一个兼容版本
|
||||
var result = '';
|
||||
var charCode;
|
||||
|
||||
for (var i = 0; i < this.length; i++) {
|
||||
charCode = this.charCodeAt(i);
|
||||
// a-z 的 ASCII 范围是 97-122
|
||||
if (charCode >= 97 && charCode <= 122) {
|
||||
// 转换为大写:减去 32
|
||||
result += String.fromCharCode(charCode - 32);
|
||||
} else {
|
||||
result += this.charAt(i);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
};
|
||||
}
|
||||
/*
|
||||
if (typeof String.prototype.trim !== "undefined") {
|
||||
var originalTrim = String.prototype.trim;
|
||||
String.prototype.trim = function() {
|
||||
if (!isDefined(this)) {
|
||||
return this;
|
||||
}
|
||||
return originalTrim.call(this);
|
||||
};
|
||||
}
|
||||
*/
|
||||
})();
|
||||
|
||||
(function() {
|
||||
window.safeTrim = function(str) {
|
||||
if (typeof str !== "undefined" &&
|
||||
str !== void 0 &&
|
||||
str !== null &&
|
||||
str != "") {
|
||||
return str.trim();
|
||||
}
|
||||
return str;
|
||||
};
|
||||
window.safeTolower = function(str) {
|
||||
if (typeof str !== "undefined" &&
|
||||
str !== void 0 &&
|
||||
str !== null &&
|
||||
str != "") {
|
||||
if (typeof str.toLowerCase !== "undefined") {
|
||||
return str.toLowerCase();
|
||||
} else if (typeof str.tolower !== "undefined") {
|
||||
return str.tolower();
|
||||
}
|
||||
}
|
||||
return str;
|
||||
};
|
||||
|
||||
window.safeToupper = function(str) {
|
||||
if (typeof str !== "undefined" &&
|
||||
str !== void 0 &&
|
||||
str !== null &&
|
||||
str != "") {
|
||||
if (typeof str.toUpperCase !== "undefined") {
|
||||
return str.toUpperCase();
|
||||
} else if (typeof str.toupper !== "undefined") {
|
||||
return str.toupper();
|
||||
}
|
||||
}
|
||||
return str;
|
||||
};
|
||||
String.prototype.safeTrim = function() {
|
||||
return window.safeTrim(this);
|
||||
};
|
||||
String.prototype.safeTolower = function() {
|
||||
return window.safeTolower(this);
|
||||
};
|
||||
String.prototype.safeToupper = function() {
|
||||
return window.safeToupper(this);
|
||||
};
|
||||
})();
|
||||
|
||||
(function() {
|
||||
if (typeof Object.prototype.safeStringMethods === "undefined") {
|
||||
Object.prototype.safeStringMethods = function() {
|
||||
return {
|
||||
safeTrim: function() {
|
||||
return window.safeTrim(this);
|
||||
},
|
||||
safeTolower: function() {
|
||||
return window.safeTolower(this);
|
||||
},
|
||||
safeToupper: function() {
|
||||
return window.safeToupper(this);
|
||||
}
|
||||
};
|
||||
};
|
||||
}
|
||||
})();
|
||||
|
||||
(function(global) {
|
||||
global.nequals = function(swStringLeft, swStringRight) {
|
||||
return (swStringLeft || "").safeTrim().safeTolower() === (swStringRight || "").safeTrim().safeTolower();
|
||||
};
|
||||
global.nempty = function(swString) {
|
||||
return (swString || "").safeTrim().safeTolower() !== "";
|
||||
};
|
||||
global.nstrlen = function(swString) {
|
||||
return (swString || "").safeTrim().safeTolower().length;
|
||||
};
|
||||
})(this);
|
||||
@@ -1 +1 @@
|
||||
0.2.2.1
|
||||
0.2.2.2
|
||||
Reference in New Issue
Block a user