对于javaScript中的alert和document.write()的执行顺序的记录
代码:
<script>
//1----语句式的匿名函数创建以及调用
(function(name,age){
alert("name:"+name+",age:"+age);
document.write("name:"+name+",age:"+age+"<br/>");
alert("111");
alert("222");
})("lisi","44");
//------------------------------------------- //3---第三种函数的创建
var f2=new Function("name","age",'alert("name:"+name+",age:"+age);');
f2("zhaijiahao","22");
</script>
浏览器测试现象:访问test.html文件之后的现象

点击完确定之后紧接着

点击完确定之后紧接着

点击完确定之后紧接着,特别注意页面中的并没有出现name:lisi,age:44这句话

最后所有的调用的函数中的alert()运行完之后,就会显示name:lisi,age:44这句话

具体的原因分析:
关于document.write()和alert()执行顺序的问题
为什么先写document.write()输出,却要等到后边的alert执行完成后才显示document.write()的内容?
解答:
有人认为:alert弹窗会阻塞代码 要点击确认才执行下面的代码,
问题复述:问题是把alert()写到document.write()之后也是先出弹窗,这是什么原因呢?
更合理的解答:alert会阻塞线程。实际上.write已经执行,只是浏览器还没渲染,这种情况下,有办法先让write执行结果显示。方式:
想实现“先document.write,再alert”。这里提供下思路:1>主线程跑document.write() ,然后利用setTimeOut() 定时0。5秒后执行alert();这个方法是线程不可控的 2>利用promise强制执行document.write()完之后,再在then 方法内执行 alert
对于javaScript中的alert和document.write()的执行顺序的记录的更多相关文章
- Javascript中页面加载完成后优先执行顺序
Javascript中页面加载完成后优先执行顺序 document优先于windowwindow优先于element //document加载完成执行方法体 document.addEventList ...
- javascript 中的location.href 并不是立即执行的,是在所在function 执行完之后执行的。
javascript 中的location.href 并不是立即执行的,是在所在function 执行完之后执行的. 1 function getUrl(tp) { if (tp == 'd') { ...
- 【Java基础】继承中的代码块和构造方法的执行顺序探索
本文讲述有关一个类的静态代码块,构造代码块,构造方法的执行流程问题.首先来看一个例子 /** * Created by lili on 15/10/19. */ class Person{ stati ...
- python中 try、except、finally 的执行顺序
def test1(): try: print('to do stuff') raise Exception('hehe') print('to return in try') return ...
- python中 try、except、finally 的执行顺序(转)
def test1(): try: print('to do stuff') raise Exception('hehe') print('to return in try') return 'try ...
- JavaScript中的alert、confirm、prompt
alert: var a=alert('Alert');//界面只有一個確定alert(a); //返回值為undefined confirm: var c= confirm('Confirm') ...
- JavaScript中的alert()与console.log()的区别
1.alert() [1.1]有阻塞作用,不点击确定,后续代码无法继续执行 [1.2]alert()只能输出string,如果alert输出的是对象会自动调用toString()方法 e.g. ale ...
- jqMobile中pageinit,pagecreate,pageshow等函数的执行顺序
常见的共有5个page函数,刚开始有点迷糊的是到底谁先谁后执行. 实验告诉我们结果: var temp = ''; $('body').live('pagechange', function () { ...
- oracle中简单查询语句的格式及执行顺序分析
一条简单的查询sql格式如下: SELECT ... FROM .... [WHERE ...] --过滤单行 [GROUP BY ... [HAVING ...]]--GROUP BY对前面wh ...
随机推荐
- java基础之 数据类型
数据类型表示要存储在变量中的不同类型的值. 一.Java语言提供了八种基本数据类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. 1. byte byte 数据类型是8位.有 ...
- C++-POJ1015-Jury Compromise
Java实现会MLE那我也没办法了 //辩方总分和控方总分之差简称为“辩控差” //辩方总分和控方总分之和简称为“辩控和” //现用f(j, k)表示,取j 个候选人,使其辩控差为k 的所有方案中,辩 ...
- [thinkphp] 启用__PUBLIC__
我真是受够了,,, 为了解决__PUBLIC__不能用的问题 我折腾了好几天了,然后终于被我找到了原因 解决过程 首先必须贴出来帮助我的人 https://my.oschina.net/u/12630 ...
- 小匠第一周期打卡笔记-Task01
一.线性回归 知识点记录 线性回归输出是一个连续值,因此适用于回归问题.如预测房屋价格.气温.销售额等连续值的问题.是单层神经网络. 线性判别模型 判别模型 性质:建模预测变量和观测变量之间的关系,亦 ...
- 每天进步一点点------Allegro 原理图到PCB网表导入
- 理解javaBean
1:什么是JavaBean 组件?使用JavaBean 组件有什么优点?答案:现在软件开发都已经转向了基于组件的开发,目前具备代表性的组件技术有微软的COM.COM+,有Sun 的JavaBean 和 ...
- django入门(一)
小白一枚,老是感觉自己学了点什么东西马上就忘了,所以打算写点下来,以后可以看看,也希望能给以后点进来的人有一些帮助 本文是django的入门,现在在学,有错误之处还希望能包涵和指出,谢谢! 首先先下载 ...
- fileupload插件调用upload.parseRequest(request)解析得到空值问题
得到的list长度是0,项目配置不能改变,没办法了,只能将HttpServletRequest强换成DefaultMultipartHttpServletRequest ,直接获取表单中的字段了.方法 ...
- 牛客腾讯2020校园招聘-后台&综合-第一次笔试
第一题 Q: 小Q想要给他的朋友发送一个神秘字符串,但是他发现字符串的过于长了,于是小Q发明了一种压缩算法对字符串中重复的部分进行了压缩,对于字符串中连续的m个相同字符串S将会压缩为m|S,例如字符串 ...
- imread函数+cvtColor()函数
加载图像(用cv::imread) imread功能是加载图像文件成为一个Mat对象,其中第一个参数表示图像文件名称 第二个参数,表示加载的图像是什么类型,支持常见的三个参数值 IMREAD_UNCH ...