弹出窗类型
<!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>弹出窗类型</title><script>/* * JavaScript中弹出框的类型* 警告框 alert('');* 确认框 confirm('');* 提示框 prompt('');*/// 1.警告框alert('hello');// 2.确认框(有返回值的)if (confirm('你确定要继续吗?')) {// 用户点击了确认console.log('继续操作');} else {// 用户点击了取消console.log('取消操作');}// 3.提示框var name = prompt('请输入姓名');console.log(name) // 用户输入的值,类型是字符串</script>
</head>
<body></body>
</html>
内置方法
<!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>JS内置方法</title><script>/* * 对一个数进行开方 Math.sqrt(数值); */var result = Math.sqrt(81);console.log(result);/* * 求三个数的最大值 Math.max();*/var num1 = +prompt("请输入第1个值:");var num2 = +prompt("请输入第2个值:");var num3 = +prompt("请输入第3个值:");var max = Math.max(num1,num2,num3);alert('最大值' + max);/* * 三次幂 Math.pow(数值,几次幂);*/var a = Math.pow(5,3); // ---> 5*5*5console.log(a);/* * 保留小数点 num.toFixed(小数点位数);*/var a1 = 0.2 * 0.2;console.log(a1); // 0.04000000000000001console.log(a1.toFixed(2)); // 0.04console.log(a1.toFixed(4)); // 0.0400</script>
</head>
<body></body>
</html>
基本数据类型和引用类型
基本数据类型有:
number,string,boolean,null,undefined,symbol以及ES10新增的BigInt(任意精度整数)
引用类型有
Object, Array,Function,Date,RegExp
两种数据类型怎么进行存储数据的
基本数据类型
对于基本数据类型来说,名和值都是存储在栈内存中。
例如var a = 1,那么名a和值b都是存储在栈内存中,
如果b=a,将a复制给b时,栈内存会新开辟一个内存,这样a与b互不影响,当a的值发生改变时,不会影响到b。基本数据类型不存在深拷贝还是浅拷贝这一说法,此说法只存在于引用型数据。
引用类型
引用数据类型,名是存储在栈内存中,值是存储在堆内存里面,但是栈内存会提供一个引用的地址指向堆内存中的值。
当b=a,将a复制给b时,其实复制的是a的引用地址,而并不是堆里面的值。当改变a的值的时候,由于a和b指向的是同一个地址,那么b自然会受到影响,这就是浅拷贝。那么要是在堆内存中也开辟一个新的内存专门为b存放值,那么就能达到深拷贝的效果了。