nested_sync_and_asynch_functions.runtime.js

来自「javascript扩展库」· JavaScript 代码 · 共 58 行

JS
58
字号
function sleep(millis, c) {	if (c.isResuming())		return c.commence();		setTimeout(function() {c.resume()}, millis);	return c.suspend();}function asynch_outer() {	var ao = "~ao";	function synch_outer() {		var so = "~so";		function asynch_inner() {			var ai = "~ai";			function synch_inner() {				var si = "~si";				ao = 1;				so = 2;				ai = 3;				si = 4;				trace([ao,so,ai,si].join(""));				return "si";			}			sleep->(1);			trace(synch_inner());			trace([ao,so,ai].join(""));			trace("ai");		}		asynch_inner();		trace([ao,so].join(""));		return "so";	}	sleep->(1);	trace(synch_outer());	trace(ao);	trace("ao");}asynch_outer();runTimeouts(3);assertTrail("~ao~so", "so", "~ao", "ao", "1234", "si", "123", "ai");function test_anon() {	(function() {		(function() {			sleep->(1);			trace(1);		})->();		trace(2);	})();	sleep->(1);	trace(3);}test_anon();runTimeouts(3);assertTrail(1,2,3);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?