20220826 第七小组 王茜

JavaScript

脚本语言,解释型,主要用来给HTML网页增加动态功能。

通常的js是运行在浏览器环境下的

JS基本上是web前端的核心!!!

JS的两种模型:

DOM

DOM:(Document Object Model)文档对象模型 对象: document

文档本身就是一个文档对象document

所有的HTML元素都是元素节点

所有的HTML属性都是属性节点

元素的文本是文本节点

注释节点(一般不用)

BOM

BOM:(Browser Object Model) 浏览器对象模型 核心对象:window

navigator:

history:

screen:

location:

回调函数:

一个函数的参数是另一个函数

计时函数:

        //计时函数
        /*
            参数一:函数
            参数二:延迟时间
        */
        let timer = setTimeout(function(){
            document.write("<h1>5秒钟后可以看见我</h1>")
        },5000);
        //清除计时函数
        //参数:要清除哪一个计时器
        clearTimeout(timer);

周期性定时器

   <script>
    //周期性定时器,每隔多少秒走一次
    let timer = setInterval(function(){
        console.log("123");
    },2000);
    clearInterval(timer);
   </script>

 

nodejs

运行在计算机环境下,服务器技术,不能操作BOM和DOM,

但是它可以操作文件,操作数据库,实际上是一门后端技术

JS解释器:

不同的浏览器,JS解释器不一样。

火狐:spidermonkey

Chrom、node:v8

Safari:JavaScriptcore

edge:chakra

JS位置问题

document

<script>
        /*
        向body打印输出
        建议放在body里的最下方
        页面的加载顺序是从上到下
        JS是用来控制页面的显示方式
        需要等待页面加载完成,再执行JS
        */
        document.write("123")
</script>

JS的简单数据类型:

1、数字(number):整数,正数,小数,负数

2、字符串(string):a,中文,@

3、布尔型(boolean):true(1) false (0)

4、空(null):相当于声明了值为空

5、undefined:未定义,没有值

6、NaN:非数字

7、数组 : var v7 = [1,2,3,4,5];

document.write(v7[2]);

<script>
        // Array()是一个函数,返回值就是一个空数组
        // JS 里没有方法这个概念,叫做函数
        // JS 里的方法不是Java里的方法
        // JS里的函数相当于Java里的方法
        // JS里没有下标越界
        let arr = [1,2,3,4,5];
        arr[100] = 10;
        document.writeln(arr + "<br>");
        document.writeln(arr.length); 
</script>

 

8、对象: var v8 = {

"username" : "admin";

}

document.write(v8.username);

    <script>
        //对象
        // Array()返回一个空数组
        // Object()返回一个空对象
        // let obj = new Object();
        function User(name) {
            this.name = name;
        }
        //创建一个user对象
        let user = new User("张三");
        console.log(user.name);
    </script>

1、2、3这三种是自动类型推断,是弱类型

判断和循环

判断

    <script>
        /*
        在JS中,if(条件)
        规定:0、null、undefined为false,剩下的都是true
        */
        let a = 1;
        if(a = 2){
            console.log(a);
            console.log("哈哈哈");
        }else{
            console.log("嘿嘿嘿");
        }
    </script>

循环

    <script>
        let arr = [1,2,3,4,5];
        //普通for循环
        for(let i = 0; i< arr.length; i++){
            console.log(arr[i]);
        }
        //for in 循环
        for(i in arr){
            console.log(arr[i]);
        }
        //遍历对象
        let student = {
            name: "小明",
            age: 10
        }
        for(attr in student){
            console.log(attr);
            console.log(student[attr]);
        }
    </script>

常用工具对象

1、Array()

 <script>
           let arr1 = [1,2,3];
           let arr2 = [9,8,7];
            //将第二个数组加到第一个数组里
        console.log(arr1.concat(arr2));
           arr1.push(10);
           // 移除数组中的最后一个元素
           arr1.pop();
           // 移除数组中的第一个元素
           arr1.shift();
           console.log(arr1); 
        </script>

2、escape()

对字符串进行编码,编码后无法再用css解码

 <script>
        let name = "你好";
        document.write(escape(name));
</script>

3、eval()

把一个字符串解析成js代码执行

<script>
        let js = "1+1";
        document.write(eval(js));
        //输出结果为:2
        document.write(js);
        //输出结果为:1+1
</script>

4、isNaN()

isNaN 判断一个值是不是数字,是false,不是true

<script>
    document.write(isNaN("哈哈"));
</script>

5、parseInt()

转整数

<script>
    document.write(parseInt(10 / 4));
    //输出结果为:2
</script>

6、parseFloat()

转小数

<script>
    document.write(parseFloat( 10 / 4));
    //输出结果为:2.5
</script>

7、Number()

把一个值转成数字

<script>
    document.write(Number("11111"));
    //输出结果为:11111
</script>

8、 String()

把一个值转成字符串

<script>
    document.write(String(123));
    //输出结果为:123
</script>

工具对象

String:

charAt,indexOf,lastIndexOf, ​ replace,concat,match, ​ substring,substr,toUpperCase ​ toLowerCase

Math:

random,ceil, ​ floor,round

Date:

getDate,getDay ​ getMonth,getYear ​ getHours,getMinutes

posted @ 2022-08-27 19:14  无聊的wx  阅读(21)  评论(0编辑  收藏  举报