• 篇三:JS的基础知识


    一:js在页面中的加载顺序

      1、页面上的js代码时html代码的一部分,所以页面加载的时候是由上而下加载。所以js加载的顺序也就是页面中<script>标签出现的顺序。<script>标签里面的或者是引入的外部js文件的执行顺序都是其语句出现的顺序,其中js执行的过程也是页面装载的一部分。

      2、在js脚本中定义的全局变量和函数,都可以在后面的脚本中调用。变量的调用,必须是前面已经声明了的,否则变量返回的值是undefined。同一段脚本中,函数定义可以出现在函数的调用后面;若函数的定义和调用在两个脚本段中,函数调用在函数定义之前就会报函数未定义错误。

      3、js中出现ajax的异步加载。异步加载可能会导致语句的执行顺序并不是按照语句的出现顺序来执行,因为异步加载时间过长,从而先执行了后面的js代码,这种情况可以将其设置为同步执行

    二:外部JS获取JSP页面的变量

      外部JS文件中是不能用<%= %>获取JAVA中的数据的,也不能用EL表达式获取,要是想获取JSP的数据,可以在JSP页面引用此外部JS之前在内部JS中申明变量接收了之后直接在外部JS中使用,如下图:

      注意:定义变量一定要放在引入js之前,不然就会报变量未定义错误。

      

    三:JS中获取项目绝对路径

      有时候js中用request.getContextPath()获取不到绝对路径。可以在JS中获取,如下:(一般放在common.js中)

    function getUrl(){
         //取绝对路径地址
         var protocol = window.location.protocol;
         var host = window.location.host;
         var pathname = window.location.pathname.split('/');
         var url = protocol+"//"+host+"/"+pathname[1];
         return url;
        }
  • 相关阅读:
    Hadoop命令大全
    Cube中时间维度
    无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?
    IE6、IE7、IE8、FF对空标签块状元素解释的不同点
    SSIS导出平面文件数据带_x003C_none_x003E的问题
    用DB2 Runtime Client实现Apache Derby 数据库ODBC编程
    区块链技术探索
    JS原型对象
    this关键字
    消息认证码
  • 原文地址:https://www.cnblogs.com/ldbangel/p/6293454.html
Copyright © 2020-2023  润新知