因公司某框架是springboot 前端是jsp页面(讲道理,我看到jsp页面就想吐)
问题描述:
本框架开发某系统需要引入某插件,于是本菜就直接去插件官网当了下来,根据使用手册引入了该引入的js 然鹅 插件报了错显示为定义
然后开始找原因,起初以为是插件问题,经过排查 在html页面可以正常运行。
然后我就分析了下是不是 jsp 与 html 问题。so 查了下资料
简单概况下来
1、jsp 是动态页面 html 是 静态页面
2、html 可以直接在浏览器运行 jsp 页面是 服务器编译解析 才能运行 这是我认为最重要的区别
具体区别和优缺点 参考大佬blog https://www.cnblogs.com/zlw-xf/p/7944800.html
so 这应该不是造成这问题的原因。。。。崩溃。。
后来开始翻插件的源码
偶然发现
依稀记得 use strict 书写要求很严格 hhh
so 去掉了 这个 问题解决。。。
so 关于严格模式 主要需注意一下几点
2.不允许函数有相同的参数,对象有相同的属性。
3.不允许对只读属性赋值:
4.禁止this关键字指向全局对象,也就是说this不能指向window顶层对象。
5.不允许使用保留关键字(implements, interface, let, package, private, protected, public, static, yield)作为变量名。js一直处于发展中,这些保留关键字将来可能用来实现相应的功能。所以不能使用。
6.创设eval作用域,在作用域 eval() 创建的变量不能在外部被调用
具体参见 大佬文章:https://www.cnblogs.com/hwgq2005/p/4181726.html
原文:https://www.cnblogs.com/rookieLee/p/11175118.html