Javascript布尔值问题
我编写了一个小脚本来重新创建Chrome地址栏,其中我的代码检查任何域扩展(.com、.edu等)的输入,并在找到扩展时将布尔标志设置为true。 然后,它检查标志,并根据结果打开网站或将其作为查询发送给谷歌。 此外,如果是网站,它会检查字符串是否包含http://和www。如果不包含,则在使用Window.Open()打开目标之前将其添加到字符串中 这里怎么了Javascript布尔值问题,javascript,arrays,boolean,Javascript,Arrays,Boolean,我编写了一个小脚本来重新创建Chrome地址栏,其中我的代码检查任何域扩展(.com、.edu等)的输入,并在找到扩展时将布尔标志设置为true。 然后,它检查标志,并根据结果打开网站或将其作为查询发送给谷歌。 此外,如果是网站,它会检查字符串是否包含http://和www。如果不包含,则在使用Window.Open()打开目标之前将其添加到字符串中 这里怎么了 function openSite(){ var domain_extensions = [".aero", ".asia"
function openSite(){
var domain_extensions = [".aero", ".asia", "...All Other Extensions...", ".zr", ".zw"];
var isSite = false;
var userIn = document.getElementById('in_field').value; //Retrieves Textbox code
for (var i=0; i < domain_extensions.length; i++)
if (userIn.search(domain_extensions[i]) !==-1)
isSite = true;
//Checks against the array of extensions
if (isSite === true){
if (userIn.search("http://") === -1 || userIn.search("https://") === -1)
{if(userIn.search("www.") === -1)
userIn = "http://www." + userIn;
else
userIn = "http://" + userIn;
}
window.open(userIn, '_blank');
//if extension is found, open website
//if qualifier http:// or https:// and/or www. not found, append and open website
}
else{
var str = encodeURI("http://www.google.com/search?q=" + userIn);
window.open(str, '_blank');
} //Searches query for common extensions; if not found search google
}
函数openSite(){
var域_扩展=[“.aero”、“.asia”、“…所有其他扩展…”、“.zr”、“.zw”];
Varisite=假;
var userIn=document.getElementById('in_field')。value;//检索文本框代码
对于(var i=0;i
字符在正则表达式中是特殊的,与任何字符都匹配
例如:
var test = "blasdfahsadfcomasdfasd";
console.log(test.search(".com")); // prints 11
在
前面加上反斜杠,以覆盖此行为:
var test = "blasdfahsadfcomasdfasd";
console.log(test.search("\\.com")); // prints -1
此外,如果只想在字符串末尾进行检查,请在字符串末尾添加$
符号,如下所示:
var test = "blasdfahsadf.comasdfasd";
console.log(test.search("\\.com$")); // prints -1; prints 12 w/o the $
什么事没有发生?为什么JavaScript的“真实性”是相关的?为什么您使用
http:
backslash-backslash而不是http://
?此外,您可能需要使用break代码>在你的for循环中,虽然我不认为这会解决任何问题,但如果你添加了一个中断,请确保也添加了花括号…@Ian Oh damn!这解决了我的一些问题。现在网站可以工作了。@contactmatt即使我在中键入了一个非网站,真理块仍然会执行。