草庐IT

unescape_c_string

全部标签

javascript - 扩展 String.prototype 性能表明函数调用快 10 倍

我想用一些实用方法扩展String对象原型(prototype)。它有效,但性能出奇的低。将字符串传递给函数比重写执行相同操作的String.prototype方法快10倍。为了确保这真的发生了,我创建了一个非常简单的count()函数和相应的方法。(我正在试验,并创建了该方法的三个不同版本。)functioncount(str,char){varn=0;for(vari=0;i结果:func:705msproto:10011msproto-reuse:10366msproto-var:9703ms如您所见,差异是巨大的。下面证明了方法调用的性能可以忽略不计,并且函数代码它自己对于方法

javascript - 我们可以说 String 是 Javascript 中的对象吗?

当我听说字符串是JS中的原语时,我总是感到困惑,因为每个人都知道字符串有不同的方法,如:length、indexOf、search等。letstring="Pleaselocatewhere'locate'occurs!";letpos=str.lastIndexOf("locate");letposition=str.search("locate"); 最佳答案 的确,JavaScript中的一切都像对象一样,因为我们可以在其上调用方法。当我们对字符串使用new关键字时,它变成一个对象,否则它是原始类型。console.log(t

javascript - 为什么 array.map(String.fromCharCode) 这么慢?

当我读到GuidovanRossum的文章AnOptimizationAnecdote时,它开始了。.决定在JavaScript中尝试同样的事情,我计时如下:numbers.map(function(x){returnString.fromCharCode(x);});这已经相当快了,但为什么不完全消除匿名函数并将String.fromCharCode直接传递给map():numbers.map(String.fromCharCode);我对它计时并且......这比以前的版本慢了~100倍。怎么会?不知何故,将此native函数直接传递给Array.map()比将其包装在另一个函数中

javascript - 斯卡拉 : How to convert String to String?

假设我有一个字符串列表:List[String]。我想将它转换为JavaScript字符串的可互操作JavaScript数组:js.Array[js.String]。如何做到这一点? 最佳答案 最简单的方法如下:myList.map(x=>x:js.String).toArray如果您不止一次需要它,可以在隐式转换中将其分解。编辑:此答案已过时。参见@gzm0'sanswer. 关于javascript-斯卡拉:HowtoconvertStringtoString?,我们在StackOv

JavaScript 对象文字 : Property names as strings vs. "raw"

有没有区别:varx={hello:'world'};和varx={'hello':'world'};?也就是说,在什么情况下,将属性名称作为字符串给出与将其作为“原始”名称给出会产生不同的结果?例如,我知道varx={};x['@£$%']='bling!';是有效的(因为任何字符串都可以是属性),但是x.@£$%='bling!'不会工作。语言关键字或保留关键字也不会作为属性名称(因此varx={for:'good',class:'y'};将不起作用。还有什么吗?例如,如果varhello='goodbye';是在上面的例子中定义的吗?或者其他的,比如functionhello()

javascript - 更喜欢在 RegExp 对象或 String 对象上使用方法吗?

Javascript中的RegExp对象和String对象都有正则表达式匹配方法。RegExp对象有方法执行测试String对象有方法匹配搜索exec和match方法非常相似:/word/.exec("words");//Result:["word"]"words".match(/word/);//Result:["word"]/word/.exec("Nomatch");//Result:null"Nomatch".match(/word/);//Result:null/word/g.exec("wordword");//Result:["word"]"wordword".match

JavaScript replace() 方法 : remove empty space just at the end and at the beginning of the string

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:HowdoItrimastringinjavascript?通过在javascript中使用replace方法,我试图删除字符串开头和结尾之间的空白区域:这是我的代码:知道我应该如何获得结果吗?input->"firstsecond".replace(/[^\s|\s$]/g,'');//""output->"firstsecond"

javascript - 为什么 new Number(2) != new String ("2") 在 JavaScript 中

以下评估为true:newNumber(2)==2newString("2")=="2"很明显,但请执行以下操作:"2"==2newNumber(2)=="2"newString("2")==2那么有人可以清楚地解释为什么他下面的评估是false吗?newNumber(2)==newString("2") 最佳答案 因为JavaScript具有数字和字符串(和bool值)的原始和对象版本。newNumber和newString创建object版本,当您将==与对象引用一起使用时,您比较对象引用,而不是值。newString(x)和S

javascript - 未捕获的类型错误 : Cannot convert a Symbol value to a string

我从服务器收到以下JSON:然后我尝试在AJAX调用的success中使用$.map映射它,如下所示:$.ajax({type:"GET",url:urlGetStaticData,success:function(data){self.AvailableTags(data[0].Value);self.MeasurementUnits($.map(data[1].Value,function(item){returnko.mapping.fromJS(item)}));最后一行抛出以下异常:UncaughtTypeError:CannotconvertaSymbolvaluetoas

javascript - "[index : string]": IFoo notation in typescript

谁能告诉我这是什么[index:string]:IFoo表示在exportinterfaceIBar{[index:string]:IFoo;}exportinterfaceIFoo{CharacterName:string;DisplayName:string;}我翻阅了TypescriptRevealed一书,没有发现任何有关该符号的内容。它应该是实现IFoo的对象的集合吗?谢谢。 最佳答案 用于显示接口(interface)实例被索引时结果的类型。当IBar类型的元素被字符串索引时,即[someString]结果将是IFoo类