首页 > 编程语言 >JavaScript Array对象(属性、方法) 留言板案例

JavaScript Array对象(属性、方法) 留言板案例

时间:2023-11-04 11:11:59浏览次数:37  
标签:arr console log 删除 JavaScript 数组 var Array 留言板

一、创建数组对象的方式

var arrOb=new Array(值,........)

var arrOb=Array(值,.......)

var arrOb=[值,.........]

var arrOb=new Array(n);

arrOb[0]=值1;

arrOb[1]=值2;

二、数组的属性

length      //数组中元素的数目

var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
console.log(arr.length);

三、数组的方法

1、转为字符串

var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
console.log(arr);
console.log(arr.toString());

2、join('连接符')       将数组元素连接成字符串   默认值为   , 分隔开

 var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
 console.log(arr.join('*'));

join原理解析

function join (a=','){
            var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
            var str = '';
            for(var i=0;i<arr.length;i++){
                if(i==arr.length-1){
                    str +=arr[i];
                }else{
                    str +=arr[i]+a;
                }
            }
            return str;
        }
        console.log(join('+'));

3、连接多个数组,返回新数组   concat(字符串/数组/数字)

        var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
        console.log(arr.concat(['郑州','嵩山'],'重渡沟'));

 

4、. . . 扩展运算符
        var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
        var arr2 = ['郑州','嵩山'];
        var arr3 = [...arr,...arr2];
        console.log(arr3);

5、追加元素,返回新的数组长度 push尾部\unshift头部

        var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
        arr.push(123456)
        console.log(arr.push(123456));
        console.log(arr);
        arr.unshift('456798');
        console.log(arr.unshift('456798'));
        console.log(arr);

添加成功:返回值是添加成功之后数组的长度

6、删除元素,返回新的数组长度 pop尾部\shift头部

        var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
        arr.pop()    
        console.log(arr.pop());
        console.log(arr);
        console.log(arr.shift());
        console.log(arr);

删除成功之后,返回的是被删除的内容

7、splice()删除添加修改

splice(startindex,length,item,item)

startindex:从什么地方开始删除

length:删除的长度

item:添加的新内容,可添加多个

返回值:被删除的内容

删除:splice(开始删除的位置,删除的长度)

        var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
        //删除
        arr.splice(0,1)

替换:splice(开始删除的位置,删除的长度,删除之后添加的新内容)

        //替换
        arr.splice(4,1,'南阳')
        console.log(arr);

添加:splice(开始删除的位置,0,添加的新内容)

        //添加
        arr.splice(1,0,'hello','world')

 八、将数组元素升序排序 sort(回调函数)

arr.sort(function(a,b){
return a-b  // 正序
return b-a  // 倒序
})

九、颠倒数组中的元素   reverse()

        var arr = ['云南','九寨沟','拉萨','西双版纳','三亚','少林寺'];
        console.log(arr.reverse());

十、留言板案例

     <input type="text" name="" id="inp">
    <button id="btn">添加</button>
    <button id="del">删除</button>
    <ul id="ul"></ul>
     <script>
        //5.获取ul标签
        var oUl = document.querySelector('#ul');
        var btn = document.querySelector('#btn');
        var inp = document.querySelector('#inp');
        var del = document.querySelector('#del');
        //1.页面显示的内容
        var arr = ['云南', '九寨沟', '拉萨'];
        //9.将渲染数据的操作封装成数组
        function show() {
            //2.拼接所有的li
            var str = '';
            //3.循环所有数组中的内容
            for (var i = 0; i < arr.length; i++) {
                str += `<li>${arr[i]}</li>`;
            }
            //4.将str放在ul标签中间,特定属性innerHTML
            oUl.innerHTML = str;
        }
        //10.调用函数
        show();
        //6.给btn添加点击事件
        btn.onclick = function () {
            //7.获取input里面的值
            var val = inp.value;
            //8.把value添加到数组中
            //arr.unshift(val);
            arr.push(val);
            //11.重现渲染
            show()
            //12.input清空
            inp.value='';
        }
        //13.给del添加点击事件
        del.onclick = function(){
            arr.shift();
            //14.重新渲染数据

            show()
        }
    </script>

标签:arr,console,log,删除,JavaScript,数组,var,Array,留言板
From: https://www.cnblogs.com/ljygzyblog/p/JavaScript-11.html

相关文章

  • JavaScript 函数、函数构造、函数调用、参数、函数返回值、变量的作用域、预解析
    一、函数及函数的构造函数是一个可重用的代码块,用来完成某个特定功能。每当需要反复执行一段代码时,可以利用函数来避免重复书写相同代码。函数包含着的代码只能在函数被调用时才会执行,就可以避免页面载入时执行该脚本简单来说就是一个封装,封装的是一个特定的功能,重复使用函......
  • ArrayLsit
    ArrayList本质上就是数组,但是其特点是没有大小限制(定义时不规定大小)。 ArrayList的构造方法: ArrayList的方法:  常见方法使用的代码示例:importjava.util.ArrayList;publicclassMain{publicstaticvoidmain(String[]args){ArrayList<Str......
  • 2D物理引擎 Box2D for javascript Games 第七章 子弹和感应器
    2D物理引擎Box2DforjavascriptGames第七章子弹和感应器你知道Box2D可以在每一个时间步中管理刚体间的碰撞并决算它们。总之,在愤怒的小鸟中制作攻城机器期间,发生了一些错误你可能需要注意一下,有时抛射物会穿过城堡,忽略了碰撞。这里发生了什么?通常,Javascript游戏运行......
  • JavaScript 其他循环语句和跳转语句
    一、while语句While循环会在指定条件为真时循环执行代码块。While循环,先进行条件判断,再执行循环体的代码while(条件表达式){循环体}如果条件不满足,则不会执行循环体,一次都不会案例:vari=1;while(i<=10){console.log(i);i++;}二、do.....while循环do/while......
  • 如何获取URL参数使用jQuery或纯JavaScript?
    内容来自DOChttps://q.houxu6.top/?s=如何获取URL参数使用jQuery或纯JavaScript?我看过很多jQuery示例,其中参数的大小和名称是未知的。我的URL只会有一个字符串:http://example.com?sent=yes我只想检测:sent是否存在?它是否等于"yes"?最佳解决方案这里。vargetUrlPar......
  • HanLP — Aho-Corasick DoubleArrayTire 算法 ACDAT - 基于双数组字典树的AC自动机
    双数组字典树能在O(1)(1是模式串长度)时间内高速完成单串匹配,并且内存消耗可控,然而软肋在于多模式匹配。如果要匹配多个模式串,必须先实现前缀查询,然后频繁截取文本后缀才可多匹配。比如ushers、shers、hers…这样一份文本要回退扫描多遍,性能较低。既然AC自动机的goto表本身就是一......
  • JavaScript for循环语句的特殊案例,用代码解决数学中的问题
    案例一:一百个和尚分一百个馒头,大和尚一人分三个,小和尚三人分一个,正好分完。问大、小和尚各几人?varnum=100;varpeople=100;varbig,small;for(big=0;big<=33;big++){small=people-big;if(big*3+small/3==num){d......
  • JavaScript String对象及方法总结
    String对象创建方法: newString()vartxt1=newString("string");vartxt2="string";String对象属性1、constructor:返回对String对象属性创建的函数  返回值:函数的引用,不是函数名:    字符串constructor属性返回 functionString(){[nativecode]}2、......
  • 在JavaScript中移除字符串中的重音符号/变音符号
    内容来自DOChttps://q.houxu6.top/?s=在JavaScript中移除字符串中的重音符号/变音符号如何从字符串中移除重音符号?特别是在IE6中,我曾经使用过以下代码:accentsTidy=function(s){varr=s.toLowerCase();r=r.replace(newRegExp(/\s/g),"");r=r.replace(......
  • 前端基础之JavaScript
    前端基础之JavaScriptJavaScript概述ECMAScript和JavaScript的关系1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECMA,希望这门语言能够成为国际标准。次年,ECMA发布262号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称......