<!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>
</head>
<body>
<script>
//JS复习学习 2023-2-8
// js 有时容易忘,不断温习下。
// JavaScript 输出
window.alert(1);
console.log(1);
document.write(1);
// JavaScript 语句
var x = 1;
function studenjs(){
console.log(1);
}
//
var a=1,b=2,c=3,d=5;
// 全局作用域
var carName = 'wulei';
publifun();
function publifun(){
document.getElementById("demo").innerHTML= "I can display " + carName;;
}
// 函数作用域
var carName = 'wulei';
publifun();
function funname(){
var fname = "函数作用域";
document.getElementById("demo").innerHTML= "I can display " + carName;;
}
console.log(fname); //在函数外,函数作用域不能使用。
// == ===
var x = 5;
x==5; //等于 true;
x==="5" //等值,等型。不等于 false
// JavaScript 条件
if(x>6 ){
//...........
}
if(x>6 ){
//...........
}else{
//............
}
// if else if else if
switch(x>10){
case n:
// ........
break;
case n:
// ........
break;
case n:
// ........
break;
default:
// .......
}
// JavaScript For 循环
var cars = ["BMW", "Volvo", "porsche", "Ford", "Fiat", "Audi"];
var text = "";
for(var i = 0; i<cars.length; i++){
text += cars[i] + "<br>";
}
console.log(text);
for( x in objectname){
console.log(x);
}
while(x <= 10){
console.log(x++);
}
do{
}while(x>1000);
// 循环可迭代数组、字符串、映射、节点列表等:
for(x of array){
console.log(x);
}
// 跳出循环
break;
continue;
// JavaScript typeof 查询数据类型。
var a = "asdfsdafdas";
typeof(a);
// JavaScript 类型转换
Number(); String(); Boolean();
// JavaScript 位运算符 web开发用的不多。
// JavaScript 正则表达式
// web开发中查看开发过程中总结的正则手册
var rep = /w3school/i;
search();
replace();
var str = "fadsfdsafdasfdsafsdf";
var sears = str.search(/dsafdas/i);
console.log(sears);
var str = "fadsfdsafdasfdsafsdf";
var sterep = str.replace("safdas","11111111");
console.log(sterep);
var reg = '/whos/i';
reg.test("asdfaswhosafdasfsdafdaf");
var reg = '/whos/i';
reg.exec("The best things in life are free!");
/e/.exec("The best things in life are free!");
// JavaScript 错误 - Throw 和 Try to Catch
try //语句使您能够测试代码块中的错误。
catch //语句允许您处理错误。
throw //语句允许您创建自定义错误。
finally //使您能够执行代码,在 try 和 catch 之后,无论结果如何。
try{
aldd(1);
}catch(err){
err.message;
}
throw "Too big"; // 抛出文本
throw 500; //抛出数字
try {
if(x == "") throw "是空的";
if(isNaN(x)) throw "不是数字";
x = Number(x);
if(x < 5) throw "太小";
if(x > 10) throw "太大";
}
catch(err) {
message.innerHTML = "输入:" + err;
}finally{
//执行代码块。
}
// 错误 - Error 对象 2个属性 name message;
// JavaScript 作用域
//局部作用域
//全局作用域
// JavaScript Hoisting 变量提升
//在 JavaScript 中,可以在使用变量之后对其进行声明。
//换句话说,可以在声明变量之前使用它。
var a;
console.log(a);
var a =1;
// JavaScript 严格模式
//声明严格模式
//通过在脚本或函数的开头添加 "use strict"; 来声明严格模式。
//在脚本开头进行声明,拥有全局作用域(脚本中的所有代码均以严格模式来执行)
"use strict";
x = 3.14; // 会引发错误(x 未定义)
// 复习的教程为:https://www.w3school.com.cn/js/js_strict.asp
</script>
</body>
</html>