javascript常见错误及处理方法

标签: Javascript 分类: Javascript 创建时间:2020-09-23 07:14:57 更新时间:2023-10-20 11:23:27

这篇文章主要是记录在调试浏览器的时候,遇到的各种常见和不常见的错误。

1.Net::ERR_INCOMPLETE_CHUNKED_ENCODING

这个问题也是很奇葩的,在其他人的电脑上都没有,就是在老板的电脑上有问题,你知道我当时有多绝望吗?

最后,检查,真的是服务器磁盘空间不足引起的。

参考文章:
1.Net::ERR_INCOMPLETE_CHUNKED_ENCODING问题跟踪,顺藤摸找出解决方法 (这篇文章给了我思路,会不会是磁盘空间不足了呢?)

2.响应已被截断

浏览器显示,响应已被截断。

【解决方法】
1.浏览器输入:about:config
2.输入框中搜索:devtools.netmonitor.responseBodyLimit
3.将值 1048576 改为 0

参考文章:
1.火狐浏览器提示响应已被截断 火狐浏览器 92.0b4请求在遇见返回报文超过1MB时提示 响应已被截断, 如图, 请看附件.提示 响应已被截断 后,接口返回的报文无法在页面上正常显示

3.the request client is not a secure context and the resource is in more-private address space private

4.Failed to read the ‘sessionStorage’ property from ‘Window’: Access is denied for this document

这个问题发生在我使用了iframe中嵌入了一个网页,在网页中,我写了如下的代码,结果在部分浏览器中就会出现报错的情况。

1
2
3
4
5
6
7
8
9
if(!token){
token=sessionStorage.getItem("token");
}
if(!token){
token=getQueryVariable("token");
if(token){
sessionStorage.setItem("token",token);
}
}

【解决】
主要就是打开Chrome的浏览器设置,在隐私与安全这歌设置项里面,将允许第三方的 Cookie 打开就可以了。

参考文章:
1.[javascript] 报错SecurityError: Failed to read the ‘localStorage’ property from ‘Window’: Access is de 这个提供了思路
2.js报错 Access is denied for this document.这是为什么呢,有解决的办法吗?
3.Iframe in Chrome error: Uncaught SecurityError: Failed to read the ‘sessionStorage’ property from ‘Window’ 这里也差不多的解决方法
3.iframe,我们来谈一谈 这里谈到了很多关于iframe的知识点:iframe基本内涵、获取iframe里的内容、在iframe中获取父级内容、iframe的轮询、自适应iframe之蜜汁广告、防嵌套网页、X-Frame-Options、CSP之页面防护、sandbox、resolve iframe跨域、H5的CDM跨域与iframe

5.关于ios下输入框无法输入的问题

今天在项目中遇到在苹果手机中无法输入的问题,苹果手机的输入框获取焦点是需要允许用户选择的,如果禁止就会无法获取input框焦点,出现无法输入的问题。

1
2
3
4
5
6
7
8
9
/** 错误 */
*{
-webkit-user-select:none;
}

/** 正确 */
*:not(input){
-webkit-user-select:none;
}

6.The reguest client is not a secure context and themesounce is in morenprivate address space “private

【问题原因】
公网资源(访问者) 访问 私网资源(被访问者)

参考文章:
1.[hrome 报错解决 The request client is not a secure context and the resource is in more-private address space `privat](https://www.cnblogs.com/whm-blog/p/16418314.html)
小额赞助
本人提供免费与付费咨询服务,感谢您的支持!赞助请发邮件通知,方便公布您的善意!
**光 3.01 元
Sun 3.00 元
bibichuan 3.00 元
微信公众号
广告位
诚心邀请广大金主爸爸洽谈合作
每日一省
isNaN 和 Number.isNaN 函数的区别?

1.函数 isNaN 接收参数后,会尝试将这个参数转换为数值,任何不能被转换为数值的的值都会返回 true,因此非数字值传入也会返回 true ,会影响 NaN 的判断。

2.函数 Number.isNaN 会首先判断传入参数是否为数字,如果是数字再继续判断是否为 NaN ,不会进行数据类型的转换,这种方法对于 NaN 的判断更为准确。

每日二省
为什么0.1+0.2 ! == 0.3,如何让其相等?

一个直接的解决方法就是设置一个误差范围,通常称为“机器精度”。对JavaScript来说,这个值通常为2-52,在ES6中,提供了Number.EPSILON属性,而它的值就是2-52,只要判断0.1+0.2-0.3是否小于Number.EPSILON,如果小于,就可以判断为0.1+0.2 ===0.3。

每日三省
== 操作符的强制类型转换规则?

1.首先会判断两者类型是否**相同,**相同的话就比较两者的大小。

2.类型不相同的话,就会进行类型转换。

3.会先判断是否在对比 null 和 undefined,是的话就会返回 true。

4.判断两者类型是否为 string 和 number,是的话就会将字符串转换为 number。

5.判断其中一方是否为 boolean,是的话就会把 boolean 转为 number 再进行判断。

6.判断其中一方是否为 object 且另一方为 string、number 或者 symbol,是的话就会把 object 转为原始类型再进行判断。

每日英语
Happiness is time precipitation, smile is the lonely sad.
幸福是年华的沉淀,微笑是寂寞的悲伤。