JS 问题集锦

【1】js页面跳转 和 js打开新窗口方法

第一种:
    <script language="javascript" type="text/javascript">
           window.location.href="http://www.xlfun.com/login.php?backurl="+window.location.href; 
    </script>

第二种:
    <script language="javascript">
    alert("返回");
    window.history.back(-1);
   </script>

第三种:
   <script language="javascript">
    window.navigate("xlfun.php");
   </script>

第四种:
   <script language="JavaScript">
          self.location='xlfun.htm';
   </script>

第五种:
   <script language="javascript">
          alert("非法访问!");
          top.location='xlfun.html;
   </script>

1.在原来的窗体中直接跳转用
      window.location.href="你所要跳转的页面";
2、在新窗体中打开页面用:
      window.open('你所要跳转的页面');
      window.history.back(-1);返回上一页
3、一些用法

按钮式:
  <input name="pclog" type="button" value="/GO" onClick="location.href='连接地址'">
链接式:
    <a href="javascript:history.go(-1)">返回上一页</a>
  <a href="<%=Request.ServerVariables("HTTP_REFERER")%>">返回上一页</a>
直接跳转式:
  <script>window.location.href='连接地址';</script>
开新窗口:
  <a href="/javascript:" onClick="window.open('http://www.dolalre.com.cn','','height=500,width=611,scrollbars=yes,status =yes')">123</a>
  <script>
            window.open('xlfun.html','newwindow','height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no, status=no')     
  </script>

      脚本运行后,page.html将在新窗体newwindow中打开,宽为100,高为400,距屏顶0象素,屏左0象素,无工具条,无菜单条,无滚动条,不可调整大小,无地址栏,无状态栏。

【2】Javascript的执行问题

获取正在执行的Javascript:

document.currentScript;

判断当前执行的Javascript是否为异步执行:

if(document.currentScript.async){
      //异步
}else{
     //同步
}

【3】JavaScript中数组的迭代方法:forEach、map、filter、reduce、every、some

【4】JS正则表达式 - test()方法的使用

<script type="text/javascript">
  var re =/se/i; //声明一个正则表达式,所有匹配he字母的,如果说要忽略大小写,就加个i,(i表示ignoreCase 或 case-insensitive)
  var sh ="SE";  //声明一个字符串,用来和声明的正则表达式做对比
  //alert(re.test(sh)); //利用test方法来对比两个变量是否匹配,返回结果为true 和 false,如果sh里含有se,就返回true,否则,就返回false
  
  var str = "I am a cute girl,and Se is too";
  //alert(re.test(str)); //返回true
  
  re =/^se/i;  //^表示以什么什么开头,这里是以se开头,并忽略大小写
  str ="hSe well good";
  //alert(re.test(str));  //返回false,
  str = "Se good";
  //alert(re.test(str)); //返回true
  
  re =/^se$/i;  //^表示以se开头,$也以se结尾,并忽略大小写
  str = "se";
  //alert(re.test(str));//返回true
  
  re =/s/;  // s匹配任何空白字符,包括空格、制表符、换页符等等
  str = "my name    is ; sdf "
  //alert(re.test(str)); //返回true
  
  re=/^[a-z]/i;    //[]匹配指定范围内的任意字符,这里将匹配英文字母,不区分大小写
  str ="SDFAOSRAJFLKAFOwe";
  //alert(re.test(str));  //返回true
  re=/^[a-z]/i;
  str ="2fafasasf";
  alert(re.test(str)); //返回false
</script>

【5】判断是否已经引入某个css或是js文件

function isInclude(name) {
    var js = /js$/i.test(name);  //根据正则表达式进行判断
    var es = document.getElementsByTagName(js ? 'script' : 'link');
    for (var i = 0; i < es.length; i++)
        if (es[i][js ? 'src' : 'href'].indexOf(name) != -1) return true;
    return false;
}

【6】JS输出文本出现中文乱码

在js输出文本,中文出现乱码,解决办法,保证js文件也是utf-8格式,就能解决这一问题。

原文地址:https://www.cnblogs.com/feiyuhuo/p/5034074.html