这句javascript代码怎么理解呢? javascript:this.src=this.src '?time=' Math.random()

我是在做一个验证码刷新的页面。onClick事件用到了这句代码实现了刷新图片,但是不能理解是什么意思,特别是后面---'?time='Math.random()---希望... 我是在做一个验证码刷新的页面。onClick事件用到了这句代码实现了刷新图片,但是不能理解是什么意思,特别是后面---'?time=' Math.random()---希望大家不吝赐教。 展开
 我来答
缓步莫迟疑C
推荐于2018-05-11 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6217
采纳率:73%
帮助的人:6523万
展开全部
主要目的是防止浏览从缓存中加载该资源.
这里的Math.random()是JS的Math对象生成随机数的方法,该方法会返回一个0到1(不含1)之间的小数,每次调用该方法都会随机返回.
所以,上面的方法的目的就是使用一个新的参数重新请求当前资源,这样,浏览器会以为这是一个不同的资源,而不会从缓存中返回,这种情况最常见的就是验证码的刷新.
但你上面的语句有语法错误,少了字符串连接符,正确写法应为
javascript:this.src=this.src+'?time='+Math.random()
百度网友d9ac3fb66
2013-03-13 · TA获得超过1282个赞
知道小有建树答主
回答量:538
采纳率:0%
帮助的人:593万
展开全部
Math.random()会返回一个0到1之间的随机数。
time=一个随机数后,链接地址src每次打开后就会是一个随机的src地址。
在url中添加无效的变量time后一般浏览器会忽略该变量,但有一个浏览器不一般,就是IE!
它解决的其实是IE的缓存问题,添加随机变量使url不同时,IE就会重新刷新缓存,否则IE会直接在缓存中提取数据,而不理会数据是否更新。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiaomistcda
2013-03-13
知道答主
回答量:28
采纳率:0%
帮助的人:22.8万
展开全部
Math.random() 是生辰随机数的函数。
在地址后面加 ?time=Math。random()是防止页面缓存
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式