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

目录
相关文章
|
4天前
|
存储 JavaScript 索引
js开发:请解释什么是ES6的Map和Set,以及它们与普通对象和数组的区别。
ES6引入了Map和Set数据结构。Map的键可以是任意类型且有序,与对象的字符串或符号键不同;Set存储唯一值,无重复。两者皆可迭代,支持for...of循环。Map有get、set、has、delete等方法,Set有add、delete、has方法。示例展示了Map和Set的基本操作。
17 3
|
16天前
|
JavaScript
JS 获取对象数据类型的键值对的键与值
JS 获取对象数据类型的键值对的键与值
|
26天前
|
JavaScript 前端开发
Math对象:JavaScript中的数学工具
Math对象:JavaScript中的数学工具
27 1
N..
|
1月前
|
存储 JavaScript 前端开发
JavaScript中的对象
JavaScript中的对象
N..
10 0
|
19天前
|
JavaScript 算法
原生JS完成“一对一、一对多”矩形DIV碰撞检测、碰撞检查,通过计算接触面积(重叠覆盖面积)大小来判断接触对象DOM
原生JS完成“一对一、一对多”矩形DIV碰撞检测、碰撞检查,通过计算接触面积(重叠覆盖面积)大小来判断接触对象DOM
|
1天前
|
JavaScript 前端开发
js的let、const、var的区别以及应用案例
【4月更文挑战第27天】ES6 中,`let` 和 `const` 是新增的变量声明关键字,与 `var` 存在显著差异。`let` 允许重新赋值,而 `const` 不可,且两者都具有块级作用域。`var` 拥有函数级作用域,并可在函数内任意位置访问。`let` 和 `const` 声明时必须初始化,而 `var` 不需。根据需求选择使用:局部作用域用 `let`/`const`,全局或函数范围用 `var`,不可变值用 `const`。
7 2
|
2天前
|
JavaScript 前端开发
JavaScript如何设置定时器,怎么清除定时器
JavaScript如何设置定时器,怎么清除定时器
9 3
|
3天前
android-agent-web中js-bridge案例
android-agent-web中js-bridge案例
11 2
|
6天前
|
JavaScript 前端开发 开发者
JavaScript中的错误处理:try-catch语句与错误对象
【4月更文挑战第22天】JavaScript中的错误处理通过try-catch语句和错误对象实现。try块包含可能抛出异常的代码,catch块捕获并处理错误,finally块则无论是否出错都会执行。错误对象提供关于错误的详细信息,如类型、消息和堆栈。常见的错误类型包括RangeError、ReferenceError等。最佳实践包括及时捕获错误、提供有用信息、不忽略错误、利用堆栈信息和避免在finally块中抛错。
|
9天前
|
JavaScript 前端开发
JavaScript 定时器
JavaScript 定时器