javascript在函数中使用setTimeout变量的作用域问题

function test1(){
var n = 10;
setTimeout("alert(n)", 500);
}
function test2(){
var n = 10;
setTimeout(function(){alert(n)}, 500);
}
test1();
test2();

上面的代码中,执行test1会报错,提示n没有定义,执行test2会把10打印出来。

上面两个函数区别在哪里?

test1中报错n没有定义很正常,为什么test2可以输出n?

2个回答

n在引号里是会认为是字符串而不是变量。

setTimeout("alert(n)", 500);第一个参数如果以字符串的形式传入的话,参数的执行上下文应该是变成了全局执行上下文,而全局环境中并没有声明n
setTimeout(function(){alert(n)}, 500);参数以匿名函数穿的话,仅仅是this指向了window,但是匿名函数可以访问到属于它作用域链里的n
假如n在全局作用域中声明,那么test1和test2都能访问到n

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
setTimeout是不是全局函数?

请告诉我为什么不是?

JavaScript中,如何在setTimeout函数中调用一个class中的函数

function create_plant(name,position_first,position_second) { this.name=name; this.position_first=position_first; this.position_second=position_second; this.plant=function(a){ if((test==0)&&(this.name)) { choose=""; test+=1; var b=document.createElement("img"); var plant_name="img/plant_gif/"+this.name+".gif"; b.setAttribute("src", plant_name); a.appendChild(b); this.wait_for_time(); test=test-1; } } this.wait_for_time=function(){ can_move=0; var picture=this.name+"_gif"; document.getElementById(picture).style.display="none"; setTimeout("this.time_out()", 3*1000); } this.time_out=function(){ var old_picture=document.getElementById(this.name); old_picture.src="img/plant/"+this.name+".png"; } } 如上,我想在这个class中的wait_for_time函数中调用setTimeout,希望能够在3秒钟后调用这个class中的time_out方法,可是用this.time_out没法令time_out执行,求能够调用time_out的解决方法

JavaScript 中的setTimeout() 第一个参数作用域

<pre name="code" class="java"><pre name="code" class="js">var aa=function(){ var aa=0; //this.fuc=function(arg){aa=arg;var obj=this;setTimeout.call(obj,"bb();",1000);}; this.fuc=function(arg){aa=arg;var obj=this;setTimeout.("bb();",1000);}; this.bb=function(){alert(aa)}; //this.setTimeout=window.setTimeout; }; var ff; var a1=new aa(); var a2=new aa(); a2.fuc(4); a1.fuc(3);  </pre> </pre> <p>setTimeout的第一个参数“bb()” 想调用当前aa的实例的bb方法,怎样才能setTimeout成功。如果使用注释掉的方法,ff的错误提示是:<span class="objectBox objectBox-errorMessage hasBreakSwitch "><span class="errorMessage ">Illegal operation on WrappedNative prototype object。</span></span></p> <p><span class="objectBox objectBox-errorMessage hasBreakSwitch "><span class="errorMessage ">还是说不能这么做,setTimeout第一个参数的执行的语句是在window域下的静态代码。</span></span></p> <p><span class="objectBox objectBox-errorMessage hasBreakSwitch "><span class="errorMessage ">那还有什么方法可以达到,一段时间后调用函数?</span></span></p>

如何在JavaScript中以某个时间间隔隐式执行函数,如JavaScript中的setTimeout()函数?

<div class="post-text" itemprop="text"> <p>I've following JavaScript code :</p> <pre><code>setTimeout('$.ajaxCall("notification.update", "", "GET");', 1000); </code></pre> <p>Now I want to execute the following function statement at a fix time interval of 1000 like above javascript code.</p> <pre><code>$notifications = Phpfox::massCallback('getGlobalNotifications'); </code></pre> <p>The statement <code>Phpfox::massCallback('getGlobalNotifications');</code> should get call at fix time interval of <strong>1000</strong> and the returned result should be updated in <code>$notifications</code> table.</p> <p>If you have any doubt regarding the issue I'm facing please do let me know.</p> <p>Thanks in advance.</p> <p>How should I do this in an reliable, efficient and optimum way in PHP?</p> <p>There is Linux operating system running on a server.</p> </div>

setTimeout延迟不执行问题

[code="javascript"] function later(arg1, arg2, arg3){ return (function() { document.writeln(arg1*arg2 + arg3); }); } var funcRef = later(1, 3, 4); setTimeout(funcRef, 1000); //@1 function second(arg1, arg2, arg3) { alert(arg1*arg2 + arg3); } setTimeout(function() {second(2, 1, 2);}, 200); //@2 [/code] @2行中,如果时间改为2000,即大于@1行中的时间 那么@2的延迟函数没有执行 这是什么原因呢,谢谢各位

js全局变量在回调函数中赋值后,无法正常取得

``` var msg_sb="<%=request.getAttribute("sb")%>"; var msg_sbTime="<%=request.getAttribute("sbTime")%>"; var msg_carNum="<%=request.getAttribute("carNum")%>"; var msg_driver="<%=request.getAttribute("driver")%>"; var map = new BMap.Map("allmap"); var point = new BMap.Point(121.48054,31.236423); //map.centerAndZoom(point, 15); map.enableScrollWheelZoom(); map.addControl(new BMap.ScaleControl()); var pointStr = msg_sb.split(","); var timeStr = msg_sbTime.split("@"); var pointArr = []; var timeArr = []; var locationArr = []; var locationInfo = ""; var start = 0; for (var k = 0; k < pointStr.length-1; k += 2) { pointArr.push({ lng: pointStr[k], lat: pointStr[k + 1] }); } for (var k = 0; k < timeStr.length-1; k += 1) { timeArr.push({ time: timeStr[k] }); } // 生成坐标点 var trackPoint = []; for (var i = 0, j = pointArr.length; i < j; i++) { trackPoint.push(new BMap.Point(pointArr[i].lng, pointArr[i].lat)); } getlocal (start) function getlocal (i){ if(i == pointStr.length-1){ alert(i) setInfo(); return } var locatedPoint = new BMap.Point(pointStr[i],pointStr[i + 1]); var gc = new BMap.Geocoder(); gc.getLocation(locatedPoint, function(rs){ var addComp = rs.addressComponents; if(addComp.province !=""){ locationInfo = addComp.province; } if(addComp.city !=""){ locationInfo += "," + addComp.city; } if(addComp.district !=""){ locationInfo += "," + addComp.district; } if(addComp.street !=""){ locationInfo += "," + addComp.street; } if(addComp.streetNumber !=""){ locationInfo += "," + addComp.streetNumber; } addLocation(locationInfo); locationInfo = ""; }); i+=2; getlocal(i) } function addLocation(content){ locationArr.push(content); } function load() {} //配置图片 map.addEventListener("click",function(e){ var clickPoint = new BMap.Point(e.point.lng,e.point.lat); //var clickPoint = new BMap.Point(e.target.getPosition().lng,e.target.getPosition().lat); var gc = new BMap.Geocoder(); gc.getLocation(clickPoint, function(rs){ var addComp = rs.addressComponents; var clickedInfo = ""; if(addComp.province !=""){ clickedInfo = addComp.province; } if(addComp.city !=""){ clickedInfo += "," + addComp.city; } if(addComp.district !=""){ clickedInfo += "," + addComp.district; } if(addComp.street !=""){ clickedInfo += "," + addComp.street; } if(addComp.streetNumber !=""){ clickedInfo += "," + addComp.streetNumber; } var clickInfoWindow = new BMap.InfoWindow(clickedInfo,opts); // 创建信息窗口对象 map.openInfoWindow(clickInfoWindow,clickPoint); //开启信息窗口 }); }); var icon; var opts; // 画图标 //window.onload = setTimeout(function(){ function setInfo(){ icon = new BMap.Icon("./image/DAF_Tipper_48px_.png", new BMap.Size(72,72), {imageOffset: new BMap.Size(0,0)}); opts = { width : 200, height : 0, title : "</br>" , enableMessage:true,//设置允许信息窗发送短息 message:"" } for (var i = 0, j = trackPoint.length; i < j; i++) { if(i == 0){ var marker = new BMap.Marker(trackPoint[i],{icon : icon}); var content = "车牌:" + msg_carNum + "<br/>" + "司机:" + msg_driver + "<br/>" + "地址:"+ locationArr[i]; var label = new BMap.Label(content,{offset:new BMap.Size(50,-30)}); marker.setTop(true); map.addOverlay(marker); marker.setLabel(label); }else if(i == j - 1){ var marker = new BMap.Marker(trackPoint[i],{icon : icon}); var content = "车牌:" + msg_carNum + "<br/>" + "司机:"+ msg_driver + "<br/>" + "地址:"+ locationArr[i]; var label = new BMap.Label(content,{offset:new BMap.Size(50,-30)}); marker.setTop(true); map.addOverlay(marker); marker.setLabel(label); }else{ var marker = new BMap.Marker(trackPoint[i]); var content = "时间:" + timeArr[i].time + "<br/>" + "地址:"+ locationArr[i]; map.addOverlay(marker); addClickHandler(content,marker); } } setZoom(pointArr) } //,3000); //map.centerAndZoom(trackPoint[0], 15); var polyline = new BMap.Polyline(trackPoint, { strokeColor: "#1869AD",//#1869AD strokeWeight: 6, strokeOpacity: 1 }); map.addOverlay(polyline); function addClickHandler(content,marker){ marker.addEventListener("mouseover",function(e){ openInfo(content,e); } ); /* marker.addEventListener("mouseout",function(e){ setTimeout(map.closeInfoWindow(),5000); } ); */ } function openInfo(content,e){ var p = e.target; var point = new BMap.Point(p.getPosition().lng, p.getPosition().lat); var infoWindow = new BMap.InfoWindow(content,opts); map.openInfoWindow(infoWindow,point); } function openInfo1(content,e){ var p = e.target; var point = new BMap.Point(p.getPosition().lng, p.getPosition().lat); var infoWindow = new BMap.InfoWindow(content,opts); map.openInfoWindow(infoWindow,point); } //根据经纬极值计算绽放级别。 function getZoom(maxLng, minLng, maxLat, minLat) { var zoom = ["50", "100", "200", "500", "1000", "2000", "5000", "10000", "20000", "25000", "50000", "100000", "200000", "500000"]; // 级别18到3。 var pointA = new BMap.Point(maxLng, maxLat); // 创建点坐标A var pointB = new BMap.Point(minLng, minLat); // 创建点坐标B var distance = map.getDistance(pointA, pointB).toFixed(1); //获取两点距离,保留小数点后两位 for (var i = 0, zoomLen = zoom.length; i < zoomLen; i++) { if (zoom[i] - distance > 0) { return 18 - i + 5; } } } function setZoom(points) { if (points.length > 0) { var maxLng = points[0].lng; var minLng = points[0].lng; var maxLat = points[0].lat; var minLat = points[0].lat; var res; for (var i = points.length - 1; i >= 0; i--) { res = points[i]; if (res.lng > maxLng) maxLng = res.lng; if (res.lng < minLng) minLng = res.lng; if (res.lat > maxLat) maxLat = res.lat; if (res.lat < minLat) minLat = res.lat; } var cenLng = (parseFloat(maxLng) + parseFloat(minLng)) / 2; var cenLat = (parseFloat(maxLat) + parseFloat(minLat)) / 2; var zoom = getZoom(maxLng, minLng, maxLat, minLat); map.centerAndZoom(new BMap.Point(cenLng, cenLat), zoom); } else { map.centerAndZoom(new BMap.Point(103.388611, 35.563611), 5); } } ``` 请各位帮我看一下,代码里的全局变量locationArr,我在回调函数中赋值,然后在window.onload中取值,在chrome上是可以正常显示locationArr的值得,但是在ie上就不行,自己试了一些网上说的方法,document , ready,但是都不行,是在没办法了,大家能帮我找找原因吗?

js内父级函数调用子函数出现函数未定义问题

首先定义了一个全局函数Locating,又在Locating内定义了一个局部函数pageScroll,然后我全局函数调用pageScroll时,报错Uncaught ReferenceError: pageScroll is not defined。 ``` function Locating(locate,time){ console.log(locate+' -- '+time); var div_locate=document.getElementById(locate); var window_top_y = document.body.scrollTop;//获取滚动条顶部距离页面顶部的距离 var element_top_y = div_locate.offsetTop;//获取某元素顶部距离页面顶部的距离 var distance = window_top_y-element_top_y;//当前窗口与顶部的距离 var time = time; var move_distance = time>50?Math.ceil((distance/Math.ceil(time/50))):distance;//每次移动的距离 //每次移动的位移应为distance/duration,要移动的位置为element_top_y, function pageScroll() { var top = document.body.scrollTop;//获取滚动条顶部距离页面顶部的距离 var dis_top = top - element_top_y; window.scrollBy(0,-move_distance); scrolldelay=setTimeout('pageScroll()',50); if(dis_top<=0){ clearTimeout(scrolldelay); } // console.log(dis_top); } pageScroll(); } ``` 请问除了将pageScroll定义为全局的函数,各位前辈还有哪些其他解决方法可以借鉴学习一下的

hide()方法中的options是起什么作用的 调回函数中的setTimeout函数

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI hide Example</title> <link href="http://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css" rel="stylesheet"> <script src="http://code.jquery.com/jquery-1.10.2.js"></script> <script src="http://code.jquery.com/ui/1.10.4/jquery-ui.js"></script> <!-- CSS --> <style> .toggler-1 { width: 500px; height: 200px; } #button-1 { padding: .5em 1em; text-decoration: none; } #effect-1 { width: 240px; height: 160px; padding: 0.4em; position: relative; } #effect-1 h3 { margin: 0; padding: 0.4em; text-align: center; } </style> <script> $(function() { function runEffect() { $( "#effect-1" ).hide( "shake", {times: 10, distance: 200}, 1000, callback ); }; // callback function to bring a hidden box back function callback() { setTimeout(function() { $( "#effect-1" ).removeAttr( "style" ).hide().fadeIn(); }, 1000 ); }; // set effect from select menu value $( "#button-1" ).click(function() { runEffect(); return false; }); }); </script> </head> <body> <div class="toggler-1"> <div id="effect-1" class="ui-widget-content ui-corner-all"> <h3 class="ui-widget-header ui-corner-all">Hide</h3> <p> JavaTpoint provides easy and point to point learning of various tutorials such as Java Tutorial, Core Java Tutorial, Android, Design Pattern, JavaScript, AJAX, SQL, Cloud Computing, Python etc. </p> </div> </div> <a href="#" id="button-1" class="ui-state-default ui-corner-all">Shake Effect Hide</a> </body> </html> 代码是这么写的,请问上述代码中{times:10, distance: 200}指的是什么? 在setTimeOut函数中 我们为什么要写 $( "#effect-1" ).removeAttr( "style" ).hide().fadeIn(); 那么长的一段代码,而不直接写$("#effect-1").fadeIn()呢?fadeIn()本身就表示淡入的意思。这里为什么还写着hide()呢?我们明明把元素hide了之后需要重现显示出来就不应该写hide().

setTimeout第一个参数执行域的问题

最开始写的代码是这样的,后来找到原因说setTimeout是window方法,而a是私有域里的,所以找不到。 (function a(){ document.write('1'); setTimeout('a()',2000); })(); 但为什么改为下面的写法就可以了呢? (function a(){ document.write('1'); setTimeout(a,2000); })(); 不介意多讲讲,谢谢。

javascript中的setTimeout方法在不同时间间隔会产生不同的结果?

① ``` for(let i=0;i<3;++i){ setTimeout(function(){ alert(i); },1000); }//这个会输出0,2,1 ``` ② ``` for(let i=0;i<3;++i){ setTimeout(function(){ alert(i); },100); }//这个会输出0,1,2 ``` ③ ``` for(let i=0;i<3;i++){ setTimeout(function(){ alert(i); },1000); }//这个会输出0,1,2 ``` 不是很懂①那里为什么会输出0,2,1。2怎么跑去1前面了? 感谢大佬们在百忙中解答我的疑问!!

setTimeout不起作用是怎么回事?

我在dede首页使用 <script> setTimeout(function() { $.getScript('jianhua.js', callback);}, 1000); </script> 这段代码,想要延迟调用jianhua.js文件,但是不起作用了,页面根本就不显示这个js文件的效果

关于Javascript中confirm函数的逻辑问题

在以下函数中,弹出信息框之后,我点击确认,返回true,弹出来的却是else的内容,如果我点击取消,弹出的也是else的内容。 如果我改变变量name的名字,那么逻辑判断正确。请问是这个name变量的名字有什么问题吗? ``` var name = confirm("你喜欢我吗?"); if(name == true){ alert("谢谢,其实我也喜欢你很久了!"); } else{ alert("操,不喜欢我就滚!"); } ```

Javascript中moveElement函数为什么总是无效?

照着Javascript DOM编程艺术打的,但是总是不能显示出移动的效果,我获取打印元素的位置,坐标值已经改变了,但是就是位置不移动 ![图片说明](https://img-ask.csdn.net/upload/201705/06/1494048490_320277.jpg) ``` function moveElement(elementID, final_x, final_y, interval) { if (!document.getElementById) return false; if (!document.getElementById(elementID)) return false; var elem = document.getElementById(elementID); if (elem.movement) { clearTimeout(elem.movement); } if (!elem.style.left) { elem.style.left = "0px"; } if (!elem.style.top) { elem.style.top = "0px"; } var xpos = parseInt(elem.style.left); var ypos = parseInt(elem.style.top); if (xpos == final_x && ypos == final_y) { return true; } if (xpos < final_x) { var dist = Math.ceil((final_x - xpos) / 10); xpos = xpos + dist; } if (xpos > final_x) { var dist = Math.ceil((xpos - final_x) / 10); xpos = xpos - dist; } if (ypos < final_y) { var dist = Math.ceil((final_y - ypos) / 10); ypos = ypos + dist; } if (ypos > final_y) { var dist = Math.ceil((ypos - final_y) / 10); ypos = ypos - dist; } elem.style.left = xpos + "px"; elem.style.top = ypos + "px"; var repeat = "moveElement('" + elementID + "'," + final_x + "," + final_y + "," + interval + ")"; elem.movement = setTimeout(repeat.interval); } ``` 在另一个制作图片切换效果的例子也是,图片不移动 ![图片说明](https://img-ask.csdn.net/upload/201705/06/1494048890_316870.jpg) ``` function prepareSlideshow() { if (!document.getElementsByTagName) return false; if (!document.getElementById) return false; if (!document.getElementById("intro")) return false; var intro = document.getElementById("intro"); var slideshow = document.createElement("div"); slideshow.setAttribute("id", "slideshow"); var preview = document.createElement("img"); preview.setAttribute("src", "images/slideshow.jpg"); preview.setAttribute("alt", "a glimpse of what awaits you"); preview.setAttribute("id", "preview"); slideshow.appendChild(preview); insertAfter(slideshow, intro); var links = intro.getElementsByTagName("a"); var destination; for (var i = 0; i < links.length; i++) { links[i].onmouseover = function() { destination = this.getAttribute("href"); if (destination.indexOf("index.html") != -1) { moveElement("preview, 0, 0, 5"); } if (destination.indexOf("about.html") != -1) { moveElement("preview, -150, 0, 5"); } if (destination.indexOf("photos.html") != -1) { moveElement("preview, -300, 0, 5"); } if (destination.indexOf("live.html") != -1) { moveElement("preview, -450, 0, 5"); } if (destination.indexOf("contact.html") != -1) { moveElement("preview, -600, 0, 5"); } } } } ```

JS的setTimeout函数没有效果

``` var passId=document.getElementsByClassName("mima"); //获得2个密码框对象 var biao=document.getElementsByTagName("form"); //获得提交的表单对象 i++; //判断密码是否输入 if(passId[0].value==""){ var p=document.createTextNode("请先输密码"); var para=document.createElement("span"); para.appendChild(p); para.setAttribute("style","color:green"); biao[0].insertBefore(para,passId[1].nextSibling); setTimeout(para.setAttribute('style','display:none;'),3000); 以上是部分JS代码,html代码如下 <span>密码:</span> <input class="mima" type="password" name="password" /> <br/> <br/> <span>确认密码:</span> <input class="mima" onfocus="real()" type="password" name="password_check" /> ``` 我想实现确认密码框输入的时候判断是否密码框输入了密码,如果没输入提示GG,并且过几秒GG会消失。 问题: 1.我想调用父亲节点的removeChild,结果没有任何反应,后来我利用setAttribute,设置display为none,但是setTimeout并没有延时执行。 2.在我加入文本节点的时候,我在上面是5个字,不会出现换行,当我输入6个或者多个就出现如下效果![图片说明](https://img-ask.csdn.net/upload/201607/18/1468820277_139754.png) 莫名的出现换行。 麻烦解答一下,谢谢。

javascript如何延迟执行一个函数?

javascript如何延迟执行一个函数? 我要在for循环里延迟1秒执行一个函数,用了settimeout,它只能初次延迟,以后的循环就延迟了,setInterval也不行. 比如: function a() { for(var i=0;i<10;i++) { //我要在这里延迟1秒执行函数b()10次,也就是10秒执行完这个for循环 } } function b() { alert("b"); }

在变量中使用Foreach循环

<div class="post-text" itemprop="text"> <p>I'm working on google map for live tracking. i have to change markers according to database Updation.</p> <p>This is a testLocs variable. i want to make it dynamic.</p> <pre><code>var testLocs = { 1: { info:'Demo', lat:31.933517, lng:74.910278 }, 2: { info:'Demo', lat:32.073266 , lng:76.997681 }, 3: { info:'Demo', lat:32.23139 , lng:78.425903 }, } setMarkers(testlocs); </code></pre> <p>So, For that from ajax call every 3000 (3 seconds) i call ajax script. So, I got response from ajax in this format.</p> <p>In Console i got 3 Arrays from database in ajax response,</p> <pre><code>Array-1 : ["Device-1", "Device-2", "Device-3"]; // all device name Array-2 : ["31.933517", "32.073266", "32.23139"]; // all latitude Array-3 : ["74.910278", "76.997681", "78.425903"]; // all longitude </code></pre> <p>Now,I want to use it in Above var testLocs.</p> <p>Whole Function,</p> <pre><code>function myTimer(new_latitude, new_longitude,new_name) { var new_latitude = new_latitude; var new_name = new_name; var new_longitude = new_longitude; console.log(new_name); console.log(new_latitude); console.log(new_longitude); var testLocs = { 1: { info:'Demo', lat:31.933517, lng:74.910278 }, 2: { info:'Demo', lat:32.073266 , lng:76.997681 }, 3: { info:'Demo', lat:32.23139 , lng:78.425903 }, } setMarkers(testlocs); } var myVar = setInterval(function(){ myTimer() }, 3000); </code></pre> <p>I tried with this but its not working.</p> <pre><code>var testLocs = { new_latitude.forEach(function(single_value) { single_value_latitude = single_value; // alert(single_value_latitude); }); } </code></pre> <p>EDIT :</p> <p><strong>Ajax code</strong></p> <pre><code> (function worker() { $.ajax({ type: "POST", dataType: "json", // data: {business1: business1}, url: '&lt;?php echo site_url('home/automatic_fetch_data'); ?&gt;', success: function (data) { //alert(data); var new_lat = []; var new_lng = []; var new_name = []; $.each(data, function(k, v) { var lati = v['latitude']; var lngi = v['longitude']; var namei = v['name']; new_lat.push(lati); new_lng.push(lngi); new_name.push(namei); }); var new_latitude = new_lat; var new_longitude = new_lng; var new_name = new_name; // console.log(new_latitude); // console.log(new_longitude); myTimer(new_latitude, new_longitude,new_name); },complete: function() { // Schedule the next request when the current one's complete setTimeout(worker, 3000); } }); })(); </code></pre> <p>I got below array in after ajax response, <code>console.log(data)</code>;</p> <p>Array : </p> <p>Array with 4 Object and in each object i got all the information device_id, device_name, latitude, longitude. In Console i got array in this information.</p> <pre><code> [Object { id="1", device_id="1", device_name="Device-1", latitude="29.630771", longitude="74.910278"}, Object { id="2", device_id="2", device_name="Device-2", latitude="32.073266", longitude="76.997681"}, Object { id="3", device_id="5", device_name="Device-3", latitude="29.630771", longitude="74.910278"}, Object { id="5", device_id="3", device_name="Device-3", latitude="29.630771", longitude="74.910278"}] </code></pre> </div>

用javascript自定义的函数没法用onclick事件来调用

``` <!doctype html> <html> <head> <title>this is a test</title> <meta http-equiv="content-type" content="text/html;charset=utf-8"> </head> <body> <form name="frm1"> <input type="button" value="change title" onclick=" title(); "> </form> </center> <script language="JavaScript"> var n=0; function title() { n++; if(n==3){n=1;} if(n==1){document.title='@@@动态编码##'}; if(n==2){document.title='☆个人主页☆'}; setTimeout("title()",1000); } </script> </body> </html> ```

javascript中onkeyup、onkeydown和settimeout的问题

var flag = 0; var t; function openFlag () { t = setTimeout(function(){flag = 1; alert(11);}, 1000); } function closeFlag() { clearTimeout(t); flag = 0; } <input onkeyup="openFlag ()" onkeydown="closeFlag()"> 现在文本框快速输入几个字母,那么输入几个字母就alert几次。稍微慢点儿输入的话就只执行一次alert,这是怎么个情况? 我想实现的是输入间隔大于一秒则执行alert语句一次。

为什么setTimeout不起作用

![图片说明](https://img-ask.csdn.net/upload/201903/28/1553779392_641736.jpeg) 为什么setTimeout不起作用

linux下利用/proc进行进程树的打印

在linux下利用c语言实现的进程树的打印,主要通过/proc下的目录中的进程文件,获取status中的进程信息内容,然后利用递归实现进程树的打印

设计模式(JAVA语言实现)--20种设计模式附带源码

课程亮点: 课程培训详细的笔记以及实例代码,让学员开始掌握设计模式知识点 课程内容: 工厂模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式、原型模型、代理模式、单例模式、适配器模式 策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式 课程特色: 笔记设计模式,用笔记串连所有知识点,让学员从一点一滴积累,学习过程无压力 笔记标题采用关键字标识法,帮助学员更加容易记住知识点 笔记以超链接形式让知识点关联起来,形式知识体系 采用先概念后实例再应用方式,知识点深入浅出 提供授课内容笔记作为课后复习以及工作备查工具 部分图表(电脑PC端查看):

Python数据分析与挖掘

92讲视频课+16大项目实战+源码+¥800元课程礼包+讲师社群1V1答疑+社群闭门分享会=99元 &nbsp; 为什么学习数据分析? &nbsp; &nbsp; &nbsp; 人工智能、大数据时代有什么技能是可以运用在各种行业的?数据分析就是。 &nbsp; &nbsp; &nbsp; 从海量数据中获得别人看不见的信息,创业者可以通过数据分析来优化产品,营销人员可以通过数据分析改进营销策略,产品经理可以通过数据分析洞察用户习惯,金融从业者可以通过数据分析规避投资风险,程序员可以通过数据分析进一步挖掘出数据价值,它和编程一样,本质上也是一个工具,通过数据来对现实事物进行分析和识别的能力。不管你从事什么行业,掌握了数据分析能力,往往在其岗位上更有竞争力。 &nbsp;&nbsp; 本课程共包含五大模块: 一、先导篇: 通过分析数据分析师的一天,让学员了解全面了解成为一个数据分析师的所有必修功法,对数据分析师不在迷惑。 &nbsp; 二、基础篇: 围绕Python基础语法介绍、数据预处理、数据可视化以及数据分析与挖掘......这些核心技能模块展开,帮助你快速而全面的掌握和了解成为一个数据分析师的所有必修功法。 &nbsp; 三、数据采集篇: 通过网络爬虫实战解决数据分析的必经之路:数据从何来的问题,讲解常见的爬虫套路并利用三大实战帮助学员扎实数据采集能力,避免没有数据可分析的尴尬。 &nbsp; 四、分析工具篇: 讲解数据分析避不开的科学计算库Numpy、数据分析工具Pandas及常见可视化工具Matplotlib。 &nbsp; 五、算法篇: 算法是数据分析的精华,课程精选10大算法,包括分类、聚类、预测3大类型,每个算法都从原理和案例两个角度学习,让你不仅能用起来,了解原理,还能知道为什么这么做。

广工操作系统课程设计(文档+代码+可执行文件)

实现作业调度(先来先服务)、进程调度功能(时间片轮转) 实现内存管理功能(连续分配)。 实现文件系统功能(选作) 这些功能要有机地连接起来

Only老K说-爬取妹子图片(简单入门)

安装第三方请求库 requests 被网站禁止了访问 原因是我们是Python过来的 重新给一段 可能还是存在用不了,使用网页的 编写代码 上面注意看匹配内容 User-Agent:请求对象 AppleWebKit:请求内核 Chrome浏览器 //请求网页 import requests import re //正则表达式 就是去不规则的网页里面提取有规律的信息 headers = { 'User-Agent':'存放浏览器里面的' } response = requests.get

linux“开发工具三剑客”速成攻略

工欲善其事,必先利其器。Vim+Git+Makefile是Linux环境下嵌入式开发常用的工具。本专题主要面向初次接触Linux的新手,熟练掌握工作中常用的工具,在以后的学习和工作中提高效率。

Python代码实现飞机大战

文章目录经典飞机大战一.游戏设定二.我方飞机三.敌方飞机四.发射子弹五.发放补给包六.主模块 经典飞机大战 源代码以及素材资料(图片,音频)可从下面的github中下载: 飞机大战源代码以及素材资料github项目地址链接 ————————————————————————————————————————————————————————— 不知道大家有没有打过飞机,喜不喜欢打飞机。当我第一次接触这个东西的时候,我的内心是被震撼到的。第一次接触打飞机的时候作者本人是身心愉悦的,因为周边的朋友都在打飞机, 每

Python数据清洗实战入门

本次课程主要以真实的电商数据为基础,通过Python详细的介绍了数据分析中的数据清洗阶段各种技巧和方法。

2019 Python开发者日-培训

本次活动将秉承“只讲技术,拒绝空谈”的理念,邀请十余位身处一线的Python技术专家,重点围绕Web开发、自动化运维、数据分析、人工智能等技术模块,分享真实生产环境中使用Python应对IT挑战的真知灼见。此外,针对不同层次的开发者,大会还安排了深度培训实操环节,为开发者们带来更多深度实战的机会。

apache-jmeter-5.1.1(Requires Java 8+).zip

。Apache JMeter 5.1.1 (Requires Java 8+),需要jdk8以上的版本。

数通HCNP中文理论全套教材.rar

内涵HCNP-IENP中文理论书-内文,

Python可以这样学(第四季:数据分析与科学计算可视化)

董付国老师系列教材《Python程序设计(第2版)》(ISBN:9787302436515)、《Python可以这样学》(ISBN:9787302456469)配套视频,在教材基础上又增加了大量内容,通过实例讲解numpy、scipy、pandas、statistics、matplotlib等标准库和扩展库用法。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

我以为我对Mysql事务很熟,直到我遇到了阿里面试官

太惨了,面试又被吊打

2019 AI开发者大会

2019 AI开发者大会(AI ProCon 2019)是由中国IT社区CSDN主办的AI技术与产业年度盛会。多年经验淬炼,如今蓄势待发:2019年9月6-7日,大会将有近百位中美顶尖AI专家、知名企业代表以及千余名AI开发者齐聚北京,进行技术解读和产业论证。我们不空谈口号,只谈技术,诚挚邀请AI业内人士一起共铸人工智能新篇章!

图书管理系统(Java + Mysql)我的第一个完全自己做的实训项目

图书管理系统 Java + MySQL 完整实训代码,MVC三层架构组织,包含所有用到的图片资源以及数据库文件,大三上学期实训,注释很详细,按照阿里巴巴Java编程规范编写

Python数据挖掘简易入门

&nbsp; &nbsp; &nbsp; &nbsp; 本课程为Python数据挖掘方向的入门课程,课程主要以真实数据为基础,详细介绍数据挖掘入门的流程和使用Python实现pandas与numpy在数据挖掘方向的运用,并深入学习如何运用scikit-learn调用常用的数据挖掘算法解决数据挖掘问题,为进一步深入学习数据挖掘打下扎实的基础。

C/C++学习指南全套教程

C/C++学习的全套教程,从基本语法,基本原理,到界面开发、网络开发、Linux开发、安全算法,应用尽用。由毕业于清华大学的业内人士执课,为C/C++编程爱好者的教程。

微信公众平台开发入门

本套课程的设计完全是为初学者量身打造,课程内容由浅入深,课程讲解通俗易懂,代码实现简洁清晰。通过本课程的学习,学员能够入门微信公众平台开发,能够胜任企业级的订阅号、服务号、企业号的应用开发工作。 通过本课程的学习,学员能够对微信公众平台有一个清晰的、系统性的认识。例如,公众号是什么,它有什么特点,它能做什么,怎么开发公众号。 其次,通过本课程的学习,学员能够掌握微信公众平台开发的方法、技术和应用实现。例如,开发者文档怎么看,开发环境怎么搭建,基本的消息交互如何实现,常用的方法技巧有哪些,真实应用怎么开发。

三个项目玩转深度学习(附1G源码)

从事大数据与人工智能开发与实践约十年,钱老师亲自见证了大数据行业的发展与人工智能的从冷到热。事实证明,计算机技术的发展,算力突破,海量数据,机器人技术等,开启了第四次工业革命的序章。深度学习图像分类一直是人工智能的经典任务,是智慧零售、安防、无人驾驶等机器视觉应用领域的核心技术之一,掌握图像分类技术是机器视觉学习的重中之重。针对现有线上学习的特点与实际需求,我们开发了人工智能案例实战系列课程。打造:以项目案例实践为驱动的课程学习方式,覆盖了智能零售,智慧交通等常见领域,通过基础学习、项目案例实践、社群答疑,三维立体的方式,打造最好的学习效果。

2021考研数学张宇基础30讲.pdf

张宇:博士,全国著名考研数学辅导专家,教育部“国家精品课程建设骨干教师”,全国畅销书《张宇高等数学18讲》《张宇线性代数9讲》《张宇概率论与数理统计9讲》《张宇考研数学题源探析经典1000题》《张宇考

专为程序员设计的数学课

<p> 限时福利限时福利,<span>15000+程序员的选择!</span> </p> <p> 购课后添加学习助手(微信号:csdn590),按提示消息领取编程大礼包!并获取讲师答疑服务! </p> <p> <br> </p> <p> 套餐中一共包含5门程序员必学的数学课程(共47讲) </p> <p> 课程1:《零基础入门微积分》 </p> <p> 课程2:《数理统计与概率论》 </p> <p> 课程3:《代码学习线性代数》 </p> <p> 课程4:《数据处理的最优化》 </p> <p> 课程5:《马尔可夫随机过程》 </p> <p> <br> </p> <p> 哪些人适合学习这门课程? </p> <p> 1)大学生,平时只学习了数学理论,并未接触如何应用数学解决编程问题; </p> <p> 2)对算法、数据结构掌握程度薄弱的人,数学可以让你更好的理解算法、数据结构原理及应用; </p> <p> 3)看不懂大牛代码设计思想的人,因为所有的程序设计底层逻辑都是数学; </p> <p> 4)想学习新技术,如:人工智能、机器学习、深度学习等,这门课程是你的必修课程; </p> <p> 5)想修炼更好的编程内功,在遇到问题时可以灵活的应用数学思维解决问题。 </p> <p> <br> </p> <p> 在这门「专为程序员设计的数学课」系列课中,我们保证你能收获到这些:<br> <br> <span> </span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">①价值300元编程课程大礼包</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">②应用数学优化代码的实操方法</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">③数学理论在编程实战中的应用</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">④程序员必学的5大数学知识</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">⑤人工智能领域必修数学课</span> </p> <p> <br> 备注:此课程只讲程序员所需要的数学,即使你数学基础薄弱,也能听懂,只需要初中的数学知识就足矣。<br> <br> 如何听课? </p> <p> 1、登录CSDN学院 APP 在我的课程中进行学习; </p> <p> 2、登录CSDN学院官网。 </p> <p> <br> </p> <p> 购课后如何领取免费赠送的编程大礼包和加入答疑群? </p> <p> 购课后,添加助教微信:<span> csdn590</span>,按提示领取编程大礼包,或观看付费视频的第一节内容扫码进群答疑交流! </p> <p> <img src="https://img-bss.csdn.net/201912251155398753.jpg" alt=""> </p>

DDR5_Draft_Spec_Rev05c.pdf

DDR5 spec

Java面试史上最全的JAVA专业术语面试100问 (前1-50)

前言: 说在前面, 面试题是根据一些朋友去面试提供的,再就是从网上整理了一些。 先更新50道,下一波吧后面的也更出来。 求赞求关注!! 废话也不多说,现在就来看看有哪些面试题 1、面向对象的特点有哪些? 抽象、继承、封装、多态。 2、接口和抽象类有什么联系和区别? 3、重载和重写有什么区别? 4、java有哪些基本数据类型? 5、数组有没有length()方法?String有没有length()方法? 数组没有length()方法,它有length属性。 String有length()方法。 集合求长度用

网络工程师小白入门--【思科CCNA、华为HCNA等网络工程师认证】

本课程适合CCNA或HCNA网络小白同志,高手请绕道,可以直接学习进价课程。通过本预科课程的学习,为学习网络工程师、思科CCNA、华为HCNA这些认证打下坚实的基础! 重要!思科认证2020年2月24日起,已启用新版认证和考试,包括题库都会更新,由于疫情原因,请关注官网和本地考点信息。题库网络上很容易下载到。

C/C++跨平台研发从基础到高阶实战系列套餐

一 专题从基础的C语言核心到c++ 和stl完成基础强化; 二 再到数据结构,设计模式完成专业计算机技能强化; 三 通过跨平台网络编程,linux编程,qt界面编程,mfc编程,windows编程,c++与lua联合编程来完成应用强化 四 最后通过基于ffmpeg的音视频播放器,直播推流,屏幕录像,

Python界面版学生管理系统

前不久上传了一个控制台版本的学生管理系统,这个是Python界面版学生管理系统,这个是使用pycharm开发的一个有界面的学生管理系统,基本的增删改查,里面又演示视频和完整代码,有需要的伙伴可以自行下

2019数学建模A题高压油管的压力控制 省一论文即代码

2019数学建模A题高压油管的压力控制省一完整论文即详细C++和Matlab代码,希望对同学们有所帮助

4小时玩转微信小程序——基础入门与微信支付实战

这是一个门针对零基础学员学习微信小程序开发的视频教学课程。课程采用腾讯官方文档作为教程的唯一技术资料来源。杜绝网络上质量良莠不齐的资料给学员学习带来的障碍。 视频课程按照开发工具的下载、安装、使用、程序结构、视图层、逻辑层、微信小程序等几个部分组织课程,详细讲解整个小程序的开发过程

相关热词 c#中如何设置提交按钮 c#帮助怎么用 c# 读取合并单元格的值 c#带阻程序 c# 替换span内容 c# rpc c#控制台点阵字输出 c#do while循环 c#调用dll多线程 c#找出两个集合不同的
立即提问