<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>编写函数,实现给定任意数字,求出数字阶乘</title> </head> <body> <script> var num1; num1=prompt("请输入一个数字"); function func(num) { if(typeof num=="number"){ if(num<=1){ return 1; }else { return num*func(num-1); } } else{ document.write("输入的不是一个数字"); } } var result=func(num1); document.write(result); </script> </body> </html>
为什么我输入的是数字但是每次打印的都是输入的不是一个数字呢
老师,视频中的defer,是不是也只对外部引入的js文件有效,还是内部手动写的js脚本 也有效,内部的语法是<script defer></script>,可是我这么写,没发现起作用。
this指的是谁
function fac1(){ var n =999; add =function(){console.log(n+=1);}//没有用var 这里是全局变量;这也是闭包 return function fac2(){console.log(n);};//这也是闭包 } var result = fac1(); result();//999 add(); result();//1000 function fac1(){ var n =999; add =function(){console.log(n+=1);}//没有用var 这里是全局变量;这也是闭包 return console.log(n); } fac1();//999 add();//1000 fac1();//999
这个垃圾回收机制,是不是这样理解,如果没有返回一个函数的话,内存的值就是调用之后的值,已经给到了999,不会改变了,然后放上闭包,会改变;也就是说他访问add函数内部的变量这样吗?
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> .div1{ width: 200px; height: 200px; background-color: red; } .div2{ width:60px ; height: 50px; background-color: orange; } </style> </head> <body> <div class="div1" onclick="test1()"> <div class="div2" onclick="test2();test3()"></div> </div> <script> var i=0; var div1=document.querySelector('.div1'); /*html事件采用冒泡机制 子节点出发,传递给父节点 绑定多个函数用分号隔开 根据绑定函数的先后顺序,触发事件顺序 */ function test1() { i++; alert('div1'); console.log(i); } if (i>=3) { div1.setAttribute('onclick',null); } else { } function test2() {alert('div2'); } function test3() { } </script> </body> </html>
老师,怎么才能点第三次div1的时候不会触发事件
var str='Frankenstein'; var yang=str.charCodeAt(1); document.write(yang);
老师,这个编码为啥是114啊?
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <script> var i=0; while (i<5){ var j=0; while (j<=i){ console.log('*'); j++; } i++; console.log('\n'); } </script> </body> </html>
老师我想让我的代码达到一个这样的效果,
但是运行起来并不是这样的,我希望知道我的错误出在哪里?是哪里的代码写错了呢
截取字符串可以用allstr.slic()么
js 创建的界面比较麻烦 跟css写的 对比有什么优势特点
老师这个j--为什么呀(操作的原因我一时没搞明白),而且这行去掉或者还是写j++都是同样的结果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <script> for (var i = 1; i <= 6; i++) { for (var k = 6 - i; k >= 0; k--) { document.write(' '); } for (var j = 1; j <= 2 * i - 1; j++) { document.write('*'); } document.write('<br/>'); } </script> </body> </html>
老师 输出图案的那个题 这么写可以吗
轮播图.rar
老师你好,我明明做了处理为什么越界还是报错
var image = new Image(); image.src = "http://iwenwiki.com/banner1.png" image.onload = function(){ console.log("图片的资源加载完成了"); document.body.appendChild(image); }
这个 var image = new Image(); 是什么意思? 还有没有类似的
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Math</title> </head> <body> <script> /* Math 1. Math.round 取整 >=0.5 取1 <0.5 取0 2.Math.floor() 向下取整 返回小于参数值的最大整数 var num=Math.floor(2.8) //2 2.Math.floor() 向上取整 返回大于参数值的最大整数 var num=Math.floor(2.1) //3 3.Math.abs() 绝对值 4. 3.Math.Max() 最大值 5.Math.min() 最小值 6.Math.pow(2,3) //8 ,2的三次方 7.Math.sqrt(num) //返回num的平方根,如果num为负数 返回NaN 8.Math.random() 返回[0,1)的随机数 */ // console.log(Math.round(1.3)); // var num1=Math.floor( Math.random()*5+10); // console.log(num1); //大乐透 var str = ''; for (var i = 1; i <= 7; i++) { var num =0; if (i <= 5) { num = Math.floor(Math.random() * 31 + 1); str+=num+','; } else{ if(i<7){ num = Math.floor(Math.random() * 15 + 1); str =num+','+str; }else{ num = Math.floor(Math.random() * 15 + 1); str =str +num; } } } console.log(str); </script> </body> </html>
老师我设计了最后两个数字在1-16 的随机数 为啥还超了16
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form> 姓名:<input type="text" name="name"/><br/> 年龄:<input type="text" name="age"/><br/> 性别:<input type="text" name="sex"/><br/> <input type="submit" value="提交"> </form> <button>获取数据</button> <script> var button = document.querySelector('button'); //封装解析的方法 function getObj(string) { var obj = {}; var newStr = string.slice(1); var proArr = newStr.split('&'); for(var i = 0;i < proArr.length;i++){ var tempArr = proArr[i].split('='); obj[tempArr[0]]=tempArr[1] } return obj; } button.onclick = function () { //document.location.search 获取提交的内容 var dateObj = getObj(document.location.search); //atob(dateObj) console.log(dateObj['name']); } </script> </body> </html>
下面是输出结果:
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637