目录
001 return
给函数一个返回值、会提前结束整个函数
判断一个数是不是质数
思 考 :
1、参数和返回值
2、参数:给我一个数
3、返回值:我告诉你是不是
002 随机数字验证码
第一个方法:
<input type="text" id="inp">
<button id="btn">刷新</button>
<script>
// 娶不到最大值
function rand(min , max) {
return parseInt(Math.random() * (max - min) + min)
}
function get(id) {
return document.getElementById(id)
}
// 随机四位数字验证码
// 方法1:生成一个四位数 1000 - 10000
var n = rand(1000 , 10000) ;
console.log(n); // 缺点:第一个数不可能是0 (不影响功能的实现)
第二个方法:
function rand(min , max) {
return parseInt(Math.random()*(max-min)+min)
}
function randcode(x) {
var res = ''
for(var i = 0 ; i < x ; i++){
var n = rand(0 , 10)
res += n;
}
return res
}
<input type="text" name="" id="inp1">
<button id="btn">刷新验证码</button>
<script src="../js/tool6.js"></script>
<script>
var oInp1 =get('inp1')
var oBtn =get('btn')
// 页面打开的时候,就要显示验证码
oInp1.value = randcode(4)
oBtn.onclick = function(){
oInp1.value = randcode(4)
}
</script>
003 短路赋值
// 或 见真即真
// 与 见假即假
// 短路赋值
var n = 1 || 2 ; // n = (1 || 2) // n = 1
console.log(n);
var n = 0 || 3 ; // n = (0 || 3) // n = 3
console.log(n);
var n = 1 && 2 ; // n = (1 && 2) // n = 2
var n = 0 && 3 ; // n = (0 && 3) // n = 0
004 求和
// 编写一个函数sum(n)
// 当传入n为偶数时,调用函数求1/2 + 1/4 + ... + 1/n
// 当传入n为奇数时,调用函数求1 + 1/3 + ... + 1/n
function Sum(n) {
var res = 0
for(var i = n % 2 ? 1 : 2; i <= n ; i += 2){
res += 1 / i;
}
return res
}
<input type="text" name="" id="inp1">
<p>
<input type="text" name="" id="inp2">
</p>
<button id="btn">合计</button>
<script src="../js/tool6.js"></script>
<script>
var oInp1 = get('inp1')
var oInp2 = get('inp2')
var oBtn =get('btn')
oBtn.onclick =function(){
var y = oInp1.value ;
oInp2.value = Sum(y)
}
</script>
005 求最大公约数
function Gys(x , y) {
var max = 0 ;
//谁小就选谁
for (var i = 1 ; i <( x > y ? y : x );i++){
if(x % i === 0 && y % i === 0){
max = i
}
}
return max
}
006 作用域
// 变量是有作用域
// 全局作用域 -- 全局变量
// 在函数外面声明的变量
// 没有var 的变量
// 局部作用域 -- 局部变量
// 在函数内部声明的变量
// 变量可以重复的声明
// 变量可以不声明,直接赋值
// 当函数内部的变量名和外部的变量相同时,优先使用自己的 --- 同名不同人
// 变量的作用域
// 优先找自己的,自己找不到就找向上一级查找,一直找到script为止,一直找不到就报错
var a = 4 ;
console.log(a); // 4
var a = 5 ; // 5
b = 6 ;
console.log(b);
function fn() {
// 变量是在函数内部声明的,只能在函数内部使用
var c = 9 ;
console.log(c);
// 没有var,此变量默认为全局变量
d = 10 ;
var b = 20 ;
console.log(b); // 20
}
fn()
// console.log(c); // 报错 c是局部变量
console.log(d);
console.log(b); // 6
007 匿名函数
// 匿名函数的自调用 -- 一次性的函数
~function (n) {
console.log(n);
}(666)
008 系统函数
// alert() // 没有返回值
// // 有输入框的弹窗
// var res = prompt('请输入你的名字');
// console.log(res);
// // 确定弹窗
// var res = confirm('确定要删除我吗'); // 返回布尔值
// console.log(res);
// eval() 能计算的时候,就计算,不能计算时,直接报错
// console.log(eval('1 + 2a'));