JavaScript对象及定时器案例

简介: JavaScript对象及定时器案例

一、Array对象

定义:

var 变量名 = new Array(元素列表);//方式一

示例:

var arr = new Array(1,2,3);


定义:

var 变量名 = [元素列表];//方式二
var arr = [1,2,3];


访问:

arr[索引] = 值;

示例:

arr[0] = 1;

注意:JS数组类似于Java集合,长度、类型都可变

方式一:

<script>
    //方式一
    var arr = new Array(1,2,3);
    alert(arr);
</script>

运行结果:

4b03c9aa8aa34f87be12039cf4e58b47.png

方式二:

<script>
    //方式二
    var arr2 = [1,2,3];
    alert(arr2)
</script>

运行结果:

4b03c9aa8aa34f87be12039cf4e58b47.png

访问:

<script>  
    var arr2 = [1,2,3];
    //访问
    arr2[0] = 10;
    alert(arr2);
 </script>

运行结果:

7792644ac0154e0d9251c680c53445b4.png

变长:

<script>    
    //变长
    var arr3 = [1,2,3];
    arr3[10] = 10;
    alert(arr3[10]);
    alert(arr3[9]);
</script>

运行结果:

908d0828e4284a688d744707810ebbe2.png

87db6e2cdf3f46f5ad38c2476911766b.png

变类型:

<script>
    var arr3 = [1,2,3];
    //变类型
    arr3[5] = "hello";
    alert(arr3[5]);
    alert(arr3);
</script>

运行结果:

ed02bba2378444ec81d992e25cc2ce67.png

29b9e81330314045a99c9ab30f03e060.png

属性length:

<script>
    //属性:length:数组中元素的个数
    var arr4 = [1,2,3];
    for (let i = 0; i < arr4.length; i++) {
        alert(arr4[i]);
    }
</script>

运行结果:

396d27ddfe044969a5f466ae98c3b025.png

adbc94e2d5e443a39057260b90e7e1ee.png

9c31d23630984d3ca9a875097c640525.png

push:添加方法

<script>    
//方法:
    //push:添加方法
    var arr5 = [1,2,3];
    arr5.push(10);
    alert(arr5);
</script>

运行结果:

dcd015a76758469db3cfff283210bd23.png

splice:删除元素

<script>
    var arr5 = [1,2,3];
    //splice:删除元素
    arr5.splice(0,1);
    alert(arr5);
</script>

运行结果:

26c05dfcc09d40519e2d0f791ebc6354.png

Array的其他方法可以查阅教程进行学习:

JavaScript 教程 (w3school.com.cn)

https://www.w3school.com.cn/js/index.asp

二、String对象

定义:

var 变量名 = new String(s);//方式一

示例:

var str = new String("hello");


定义:

var 变量名 = s;//方式二
var str= "hello";
var str= 'hello';


属性:

length(字符串的长度)

方法:

charAt() 返回指定位置的字符
indexOf() 检索字符串

方式一及方式二:

<script>
    //方式一
    var str1 = new String("abc");
    //方式二
    var str2 = "abc";
    var str3 = 'abc';
    //length属性
    alert(str3.length);
</script>

运行结果:

d69b85f720ea416abdecf832f3466cef.png

trim():

<script>
    //trim():字符串前后两端的空白字符
    var str4 = '      abc       ';
    alert(1 + str4.trim() +1);
</script>

运行结果:

55ace7a43a354b21a41def1f53659009.png

三、自定义对象

格式:

var 对象名称 = {
                        属性名称1:属性值1,
                        属性名称2:属性值2,
                        .......
                        函数名称:function(无参列表){}
                        ......
}

示例:

var person = {
        name:"zhangsan",
        age:23,
        eat:function(){
                alert("干饭~");
        }
};
<script>
    var person = {
        name : "zhangsan",
        age : 23,
        eat: function (){
            alert("干饭~");
        }
    };
    alert(person.name);
    alert(person.age);
    person.eat();
</script>

运行结果:

1bcd451037404f65a219b70b7aebc00f.png

5c575af969994a2788f1f71d9b697332.png

3edd4872298c44918c5fd13199449d93.png

四、定时器案例

定时切换图片


需求:每隔一秒,灯泡切换一次状态


    a0305948954042768a26c64e7b064c40.jpg34578351e7ad4cea9858ccf3d72bf94e.jpg

定时器示例:

<script> 
   //定时器
    /*
        setTimeout(function,毫秒值):在一定的时间间隔和执行function,只执行一次
        setInterval(function,毫秒值):在一定的时间间隔和执行function,循环执行
     */
    setTimeout(function (){
        alert("hehe");
    },3000);
    setInterval(function (){
        alert("hehe");
    },2000);
</script>

定时器案例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<input type="button" onclick="on()" value="开灯">
<img id="myImage" border="0" src="../img/off.png" style="...">
<input type="button" onclick="off()" value="关灯">
<script>
    function on() {
        document.getElementById("myImage").src = '../img/on.png';
    }
    function off() {
        document.getElementById("myImage").src = '../img/off.png';
    }
    var x = 0;
    //根据一个变化的数字,产生固定的个数的值
    //定时器
    setInterval(function () {
        if (x % 2 == 0) {
            on();
        } else {
            off();
        }
        x++;
    }, 1000);
</script>
</body>
</html>

运行结果:

2582374437f6498aa3ef20eba40d7e00.gif

目录
相关文章
|
15天前
|
JavaScript 前端开发
如何在 JavaScript 中使用 __proto__ 实现对象的继承?
使用`__proto__`实现对象继承时需要注意原型链的完整性和属性方法的正确继承,避免出现意外的行为和错误。同时,在现代JavaScript中,也可以使用`class`和`extends`关键字来实现更简洁和直观的继承语法,但理解基于`__proto__`的继承方式对于深入理解JavaScript的面向对象编程和原型链机制仍然具有重要意义。
|
19天前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
19天前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
1月前
|
存储 JavaScript 前端开发
JavaScript 对象的概念
JavaScript 对象的概念
38 4
|
1月前
|
JavaScript 前端开发
js之一次性定时器
js之一次性定时器
13 1
|
1月前
|
JavaScript 前端开发
js之永久定时器
js之永久定时器
17 1
|
1月前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
34 1
|
1月前
|
存储 JavaScript 前端开发
js中函数、方法、对象的区别
js中函数、方法、对象的区别
16 2
|
1月前
|
JavaScript 前端开发 Unix
Node.js 全局对象
10月更文挑战第5天
29 2
|
1月前
|
JavaScript 前端开发 大数据
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
在JavaScript中,Object.assign()方法或展开语法(...)来合并对象,Object.freeze()方法来冻结对象,防止对象被修改
20 0