草庐IT

FILTER_SANITIZE_STRING

全部标签

javascript - 在 JavaScript 中替换 `String.prototype.valueOf`

我正在构建一个DSL这将受益于能够破解一些JS内部结构。我知道这在一般的JS用法中是一个非常糟糕的主意,但就我的目的而言,这没关系。以下代码工作正常:varstr=newString("blah");str.valueOf=function(){return10}console.log(str*10);//outputs100但这不是:varstr="blah";str.valueOf=function(){return10}console.log(str*10);//outputsNaN(becausestr==="blah")了解内部结构的人可以解释一下这里发生了什么吗?这两个示例

javascript - 迭代值时,为什么当值是数字时 typeof(value) 返回 "string"? JavaScript

我正在使用GoogleChrome浏览器进行此测试:与直觉相反,第一个循环提示“string”三次,而第二个循环提示“number”三次。numarray=[1,2,3];//for-eachloopfor(numinnumarray)alert(typeof(num));//Standardloopfor(i=0;i我原以为两个循环都会警告“数字”三次。第一个循环在JavaScript中是如何实现的?换句话说,如果for-each是语法糖,那么使用标准循环它的等价物是什么?此外,是否有某种方法可以使用标准循环遍历对象的命名空间?我希望使用第二种循环来触及某个对象的每一个方法和属性。

JavaScript String 对象在 jQuery.post 上被拆分成一个数组

我正在使用jQuery执行ajax调用-其中许多都工作正常,但我在尝试向服务器发送字符串时遇到了一个奇怪的问题。我已将代码缩小为:varx=newString('updateGroup');vary='updateGroup';$.post('page.aspx',{f:x,f2:y},function(data){});然而,当它到达服务器时,请求变量如下:Request["f"]nullstringRequest["f2"]"updateGroup"stringRequest.Form.AllKeys{string[12]}string[][0]"f[0]"string[1]"f[

javascript - 原型(prototype)方法上的 JS Array.prototype.filter

有没有更简单的方法在没有匿名函数的原型(prototype)方法上调用过滤器?我想知道是否有与myArray.filter(function(it){it.method()})等价的东西。这看起来很接近于可能有效的方法(实际上无效):functionX(){}X.prototype.method=function(){console.log(this);}[newX(),newX()].filter(X.prototype.method.call);相反,我在最新的Firefox和Chrome中都遇到了TypeError,这是因为它没有完全按照我的要求进行:x=function(){c

javascript - 在 JavaScript 中使用 "Boolean"作为 .filter() 的参数

最近我了解到可以使用Boolean关键字来检查boolean值是否为false,例如这里,arrayOfSheeps只是一个boolean值数组。functioncountSheeps(arrayOfSheeps){returnarrayOfSheeps.filter(Boolean).length;}由于我找不到任何有关使用“boolean”作为关键字的信息,我想知道这个词是否还有其他用途,甚至我可以用来了解它的任何资源。 最佳答案 Boolean不是关键字,它是function,而函数只是对象,您可以传递它们。它与以下内容相同:

javascript - String 和 Array 泛型方法将在未来被弃用

在下面的链接(MDN站点)上它说“字符串泛型是非标准的,已弃用并且将来可能会被删除。请注意,如果不使用下面提供的填充程序,您不能跨浏览器依赖它们。“他们所指的方法是否是他们在该声明下方提供的垫片中列出的方法?这是我见过的唯一提到短语“字符串泛型”的地方,所以让我很困惑。对于数组泛型也有同样的问题,因为该站点也提到了类似的情况。https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String#String_generic_methodshttps://developer.mozi

javascript - 当从客户端传递到 nodeJS 时,String 变成了 Object

我正在使用yeomanangular-fullstack来生成我的项目。所以客户端是angularJs(typeScript),后端是nodeJs。问题是我有一个变量,当我将它打印到控制台时,我得到一个很长的字符串(如果你需要知道它来自googleplacesapi的photo_reference)。当我通过http.get将其传递给nodeJSapi,并将其打印到日志时,我得到了响应对象对象。主Controllerfor(varphotoofresponse.data.result.photos){this.getImages(photo);console.log(photo.pho

javascript - Angular 2 : How to filter records between two dates?

{"id":1,"name":"Jack","date":"01-06-2017"},{"id":2,"name":"Allen","date":"07-08-2017"},{"id":3,"name":"Annie","date":"22-11-2017"},此JSON存储在“成员”数组中,我想根据开始和结束日期过滤成员,例如:letstartDate;letendDate;letselectedMembers=this.members.filter(m=>m.date>startDate&&m.date类似的东西.. 最佳答案

Javascript 清理 : The most safe way to insert possible XSS html string

目前我正在将此方法与jQuery解决方案结合使用,以从可能的XSS攻击中清除字符串。sanitize:function(str){//returnhtmlentities(str,'ENT_QUOTES');return$('').text(str).html().replace(/"/gi,'"').replace(/'/gi,''');}但我觉得它不够安全。我错过了什么吗?我在这里尝试了phpjs项目中的htmlentities:http://phpjs.org/functions/htmlentities:425/但它有点错误并返回一些额外的特殊符号。也许是旧

javascript - 为什么typeof String返回函数

为什么:console.log(typeofString);当它是object时返回function? 最佳答案 String是字符串对象的构造函数。所有构造函数都是函数,因此您看到的是返回值。您可以通过创建如下代码自己看到:varMyObject=function(value){this.value=value;};MyObject.prototype.getValue=function(){returnthis.value;}console.log(typeof(MyObject));//functionconsole.log(