草庐IT

single-String

全部标签

javascript - 为什么 String.prototype 里面的 'this' 指的是对象类型,而不是字符串类型?

我正在尝试扩展字符串以提供其自身的散列。我正在使用Node.js加密库。我这样扩展字符串:String.prototype.hashCode=function(){returngetHash(this);};我有一个看起来像这样的getHash函数:functiongetHash(testString){console.log("typeis"+typeof(testString));varcrypto=require('crypto');varhash=crypto.createHash("sha256");hash.update(testString);varresult=hash

javascript - 不能将 String.prototype.match 用作 Array.some 的函数吗?

这行不通:vars='^foo';console.log(['boot','foot'].some(s.match));UncaughtTypeError:String.prototype.matchcalledonnullorundefined但是这样做:vars='^foo';console.log(['boot','foot'].some(function(i){returni.match(s)}));这是为什么?我以某种方式想象String.prototype.match函数太“原始”之类的,但究竟是为什么呢?因为我没有使用ES2015,所以第二个版本看起来很冗长。有替代方案吗

javascript - "single source of truth"是什么意思?

我已阅读thisarticle.在“ControlledComponents”部分,有一句话:WecancombinethetwobymakingtheReactstatebethe“singlesourceoftruth”.“单一事实来源”是什么意思? 最佳答案 特别是在您链接的文章中,它讨论了“受控”和“不受控”组件。基本上,当您想要实现“单一事实来源”时,您希望让您的组件可控。默认情况下,输入字段是不可控的,这意味着它将从DOM渲染数据,而不是状态。但是,如果您改为让输入监听状态(因此使其可控),除非您更改状态,否则它将无法更

javascript - 为什么我看到 javascript 数组是用 string.split() 创建的?

我在网上看到这样的代码vardays="MondayTuesdayWednesdayThursdayFridaySaturdaySunday".split("");为什么这样做而不是vardays=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"];我不认为懒惰或无知与它有任何关系。这是jQuery1.4.2之外的props:"altKeyattrChangeattrNamebubblesbuttoncancelablecharCodeclientXclientYctrlKeycurrentT

javascript - 为什么 String.prototype 的方法可用于字符串文字?

这个问题出自another,它涉及console.dir与字符串文字的行为。特别是,请参阅关于myanswer的评论.众所周知,JavaScript中的String对象有很多方法。这些方法在String.prototype对象上定义。String.prototype.toUpperCase例如。因此,我们可以这样做:vars=newString("hello"),s2=s.toUpperCase();//toUpperCaseisamethodonString.prototype不过,我们也可以这样做:vars="hello",//sisastringliteral,notaninst

javascript - Javascript 的缺点 "single var pattern"

在Stefanov的JSDesignPatterns一书中,他写道“你使用一个var语句并声明多个以逗号分隔的变量”,然后给出了一个“单一var”模式的示例,如下所示:functionfunc(){vara=1,b=2,sum=a+b,myobject={},i,j;Stefanov还写道:“在声明变量时也使用初始值对其进行初始化是一种很好的做法。”“您也可以在声明时做一些实际工作,例如前面代码中sum=a+b的情况。”现在我有一些代码如下,使用单个var模式声明了相同数量的变量,但做了更多的“声明时的实际工作”:varhtml='{purchaseQty}FR: {from

javascript - jQuery.contents() 获取每个元素作为 HTML/STRING

我正在尝试使用jquery内容获取某些对象(包括文本)的HTML形式。这是我到目前为止得到的:HTMLtestfoobarjQuery$('#mydiv').contents().each(function(){console.log($(this).html());console.log($(this).prop("innerHTML"));console.log($(this).prop("outerHTML"));});有什么办法吗?我四处搜寻,但找不到任何东西。预先感谢您的回答! 最佳答案 如果您正在寻找包含包装元素的htm

javascript - 什么是 "string math",为什么不好?

我最近因为在我编写的应用程序中使用“字符串数学”而受到一位开发人员的斥责。我对整个开发过程还很陌生,没有接受过正规培训,也没有听说过这个问题。这是什么?有问题的代码:$('.submit-input').click(function(){varvalid=true;$('input,select,radio').removeClass('error');$('.error-message').hide();$('.validate').each(function(){if($(this).val()==$(this).attr('default')){valid=false;$(thi

javascript - 在 coffeescript 中以编程方式调用函数/"by string"

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:Dynamicobjectpropertyname我有一个函数需要根据用户输入的数据调用。例如,我有:models.catmodels.dog现在,我希望能够调用models.[my_str],其中my_str="snake"。所以计算机会认为它正在尝试执行models.snake。有没有办法在javascript或更好的coffeescript中做到这一点?

javascript - 带 RequireJS 的 Underscore.string

我正在尝试同时使用Underscore和Underscore.string与RequireJS.main.js的内容:require.config({paths:{'underscore':'//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.4.4/underscore-min','underscore-string':'//cdnjs.cloudflare.com/ajax/libs/underscore.string/2.3.0/underscore.string.min',},shim:{'underscore':{exports: