gpt4 book ai didi

javascript - ReferenceError StringBuilder 未在 JavaScript 中定义

转载 作者:行者123 更新时间:2023-12-01 01:43:00 24 4
gpt4 key购买 nike

我有一个使用字符串生成器函数的javascript函数。它可以工作(95%)所有主要浏览器,如IE8+、chrome、firefox等。我测试了它,它工作正常,但有时我会收到类似的错误“字符串生成器未定义”。它适用于某些客户,但不是全部,我找不到哪个浏览器和版本,所以我想知道 stringbuilder 功能是否适用于所有浏览器?有版本限制吗?我搜索了这个错误,但没有得到任何答案。你们遇到过类似的问题吗?请建议一些链接或方法来解决这个问题。下面是我的代码。

  function GetXmlString() {
try {
var sbMain = new StringBuilder();
sbMain.append("<?xml version='1.0' encoding='UTF-16' ?>");
sbMain.append("<Application");
sbMain.append("</Application>");
}
catch (e) {
strXml = "";
//alert("Error in GetXmlString " + e.name + "\n" + e.message);
var error = "Error in GetXmlString " + e.name + "\n" + e.message
$.ajax({ type: "POST",
url: "AL_GetAjaxValue.aspx",
data: { type: "LogError", Error: "" + error + "" },
dataType: "html",
success: function(msg) {

},
error: function() {
}
});
}

}

我找到了 StringBuilder 声明。这个声明有问题吗?请验证此代码。

function StringBuilder(value) {
this.strings = new Array("");
this.append(value);
}
StringBuilder.prototype.append = function(value) {
if (value) {
this.strings.push(value);
}
}
StringBuilder.prototype.clear = function() {
this.strings.length = 1;
}
StringBuilder.prototype.toString = function() {
return this.strings.join("");
}

最佳答案

有趣的是,有时您会收到错误,但其他时候则不会。你怎么会陷入这种方法呢? StringBuilder 不是 JavaScript 原生的,而是一个 C# 类。

如果您发现需要为 javascript 定义 StringBuilder,您可以这样做:

//StringBuilder class
function StringBuilder(value){
this.strings = new Array('');
this.append(value);
}

// Appends the given value to the end of this instance.
StringBuilder.prototype.append = function (value){
if (value){
this.strings.push(value);
}
}

StringBuilder.prototype.appendLine = function(value){
if(value){
this.strings.push(value);
this.strings.push("\n");
}
}

// Clears the string buffer
StringBuilder.prototype.clear = function (){
this.strings.length = 1;
}

// Converts this instance to a String.
StringBuilder.prototype.toString = function (){
return this.strings.join('');
}

关于javascript - ReferenceError StringBuilder 未在 JavaScript 中定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34081129/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com