我通过jslint收到一些错误,我需要帮助:
糟糕的擒纵:
替换('/ [^ a-zA-Z0-9ñÑáÁéÉíÍóÓúÚüÜ¡s\ s + {0}] / g','')
空块:
$('#myElement')。keydown(function(event){ if(allowAlphaNumeric(event)){ } });
意外使用'|'
return(((1 + Math.random())* 0x10000)| 0).toString(16).substring(1);
任何人都有任何想法我如何解决这些问题?
答案 0 :(得分:1)
你给replace
一个包含正则表达式文字的字符串。你几乎肯定想把它变成一个正则表达式:
replace(/[^a-zA-Z0-9ñÑáÁéÉíÍóÓúÚüÜ¡¿\s+{0}]/g, '')
如果问题replace
是String#replace
,我肯定是这样的情况。如果它是别的东西(知道它会很方便)并且你真的希望它是一个字符串,那么只要确保你加倍字符串中的任何反斜杠 - \s
不是有效的字符串转义,它是一个正则表达式构造。因此,您需要\\s
,以便字符串最终包含\
,后跟s
。但同样,我认为你想要文字(你不会那样做)。
在块中添加一些内容:
$('#myElement').keydown(function (event) { if (allowAlphaNumeric(event)) { } });
// here -----------------^
return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
这个对我来说很好语法(逻辑上,请参见下面的注释),因为你确实想要那里的按位运算符。只是jslint不理解你的意图。
但是,嗯,x | 0
与x
不一样?你能不能删除它?