数组:
    
    1.
    var arr=[1,2,3,4];

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

区别:
        1.写法不一样,选择第一种(好写)
        2.选择第一种!

----------------------------------
关于数组方法:
    
1.push(要添加的值);往里添加一个!

var arr=[1,2,3,4]
    
arr.push(888);

默认是往后面添加一个!
--------------------------------------
2.unshift(要添加的值);默认往前面添加一个!

--------------------------------------
3.pop()--默认从后面删除一个!

--------------------------------------
4.shift()--默认从前面删除一个!
-------------------------------------

5.咱从中间添加或者删除,替换!

万能操作!

splice(,,,,)

删除:
    arr.splice(开始下标,删除个数);

var arr=[1,2,3,4,5,6,7];
    
    arr.splice(1,2);---1,4,5,6,7
    
    alert(arr);

添加:
    arr.splice(开始的下标,删除0个,要添加的项1,要添加的项2,....);

var arr=[1,2,3,4,5,6,7];
    
    arr.splice(2,0,'a','b','c');
    
    alert(arr);

--------------------------------------------
替换:
    删除几个,就添加几个!!!

var arr=[1,2,3,4,5,6,7];
    
    arr.splice(2,3,'a','b','c');
    
    alert(arr);

-----------------------------

模拟push

var arr=[1,2,5,6,7];
    
    arr.splice(arr.length,0,8);
    
    alert(arr);

pop

var arr=[1,2,5,6,7,8,9];
    
    arr.splice(arr.length-1,1);
    
    alert(arr);

==================================================
6.
var str='welcome to beijing'
str.split(' ');----['welcome','to','beijing'];

join:拼接  得到字符串!

var arr=['welcome','to','beijing'];
arr.join(' ');----'welcome to beijing';

==============================================

题:
var str='welcome to beijing';

--》'Welcome To Beijing';

思考步骤:
    1.str切分一下

var arr=str.split(' ');
    ['welcome','to','beijing']

2.循环得到每个的大写字母
    for(i=0;i<arr.length;i++){
        var n=arr[i].charAt(0).toUpperCase();
        alert(n);--w  t  b
    }

3.循环得到每个没有手写字母的字符串!
    elcome  o  eijing

===========================================

7.数组链接

var arr=[1,2,4];
var arr1=[6,7,8];
    
alert(arr.concat(arr1));

链接多个
var arr=[1,2,4];
    var arr1=[6,7,8];
    var arr2=[56,57,58];
    
    alert(arr.concat(arr1,arr2));
--------------------------------------------

8.数组的翻转arr.reverse()

var arr=[1,2,3,4,5];

--5,4,3,2,1

var arr=[1,2,3,4,5];
    
    alert(arr.reverse());

------------------------------------------
9.排序:
    
var arr=['banana','apple','color','width'];

arr.sort();

alert(arr);
    
注意:它是按照字典序来排序(小到大)

----------------------------------
var arr=[123,4,56,88,34,0,-56];

var arr=[123,4,56,88,34,0,-56];

arr.sort();
    
    alert(arr);

也是呢按照字典序排序!

目的:
    ----按照数字大小排序
var arr=[123,4,56,88,34,0,-56];

arr.sort(function(n1,n2){
        return n1-n2;
    });
    
    alert(arr);

注意:n1-n2  小到大
      n2-n1  大到小
==================================================

特性:
    
    arr.length可以赋值!

清空数组:
        1.arr.length=0;
        2.arr=[];
        3.arr.splice(0,arr.length)
        4.while(arr.length){
            arr.pop();
        }

***字符串的length不能赋值!!!!
--------------------------------------------------

json

写法:
    var json={name:value,name1:value1,....}

json.name

json和数组的区别:

json:
    1.无序
    2.没有length;
    3.下标字符串
    4.for in
    5.添加一项json.youbian='000000';
    6.删除
数组:
    1.有序
    2.有length
    3.下标数字
    4.普通for循环
    5.添加方式arr.push
    6.删除

json循环:

var json={age:15,name:'张三',adrs:'北京'};
    
    for(var name in json){
        alert(json[name]);    
    }

注意:
    1.虽然for in循环数组可以用,但是for in 性能没有普通for循环好!所以说平时用普通for,不到万不得已不用for in!  遇到json就是万不得已!必须用for in!

2.alert(json)--alert不足以把json打印出来,它只是弹出json类型!

json专用打印方法:console.log(json);
-------------
============================================

设置样式:
    
    1.行间样式
        obj.style.width="100px"

oBox.style.cssText='width:100px;height:100px;background:red;';

2.className
    3.json

==================================================

1.实参数组arguments

function show(){
        var res=0;
        
        for(var i=0;i<arguments.length;i++){
            res+=arguments[i];    
        }    
        alert(res);
        
        //var arguments=[1,2,3,4,5]
    }
    show(1,2,3,4,5);//实际运用的参数:实

================================================
获取元素方式:
    
    1.id--获取一个
    2.标签名(tagname)---获取一组

3.class名(className)---获取一组

var str='redvfrvervbr'

str.indexOf(d)!=-1

前端学习(十七)js数组(笔记)的更多相关文章

  1. 前端学习之——js解析json数组

    ** 前端学习之——js解析json数组** 解析json数组即对JSONArray的遍历 一.对于标准的json数组如: var result=[{"flag":1," ...

  2. 前端学习:JS面向对象知识学习(图解)

    前端学习:JS面向对象知识学习(图解) 前端学习:JS(面向对象)代码笔记 JS面向对象图解知识全览 创建类和对象 方式1:使用Object()函数 方式2:使用自变量 方式3:使用工厂函数 创建多个 ...

  3. 前端学习:JS学习总结(图解)

    前端学习:JS学习总结(图解) JS的代码笔记 JS比HTML和CSS的知识点要多的多,下面分几段来介绍其内容... 为了能让大家更好的检索,前面的图解是整个JS的概括,后面的才是知识点... 旁边就 ...

  4. 前端学习历程--js事件监听

    一.事件监听使用场景 1.事件触发多个方法的时候,后一个方法会把前一个方法覆盖掉. window.onload = function(){  var btn = document.getElement ...

  5. 前端学习:JS(面向对象)代码笔记

    前端学习:JS(面向对象)代码笔记 前端学习:JS面向对象知识学习(图解) 创建类和对象 创建对象方式1调用Object函数 <body> </body> <script ...

  6. 前端学习:学习笔记(JS部分)

    前端学习:学习笔记(JS部分) 前端学习:JS学习总结(图解)    JS的简介 JS基本语法 JS内置对象 JS的函数 JS的事件 JS的BOM JS的DOM JS的简介 新建步骤 <body ...

  7. [学习笔记]JS 数组Array push相关问题

    前言: 今天用写了一个二维数组,都赋值为零,然后更新其中一个值,结果和预期是不一样,会整列的相同位置都是同一个值. 1.用Chrome的控制台样例如下: arrs[2][2] =1的赋值,竟然是三个数 ...

  8. 值得H5前端学习的60个JS插件(含DEMO演示)

    下面也可以说是H5前端学习的js插件大全.基本包含了大部分的前端最前沿的js插件和库. 布局 SuperEmbed.js- 是一个Javascript库,可检测出网页上的内嵌视频并使他们能够变成响应式 ...

  9. 前端学习数据库MYSQL

    这篇文章主要写了 1.数据库MYSQL 2.基本上会遇到的所有SQL语句 数据库可视化软件------Navicat 数据库里边存放的是表,表与表之间是有关联的,而且可以对表进行相关操作(增,删,改, ...

随机推荐

  1. 转载:对比Angular/jQueryUI/Extjs:没有一个框架是万能的

    Angular不能做什么?对比Angular/jQueryUI/Extjs 框架就好比兵器,你得明白你手里拿的是屠龙刀还是倚天剑,刀法主要是砍,剑法主要是刺.对于那些职业喷子和脑残粉,小僧送你们两个字 ...

  2. exp ORA-01455: converting column overflows integer datatype

    EXP-00008: ORACLE error 1455 encounteredORA-01455: converting column overflows integer datatype add ...

  3. java 三元运算符

    /* 一元运算符:只需要一个数据就可以进行操作的运算符 如:取反! 自增++ 自减 -- 二元运算符:需要两个数据才可以进行操作的运算符 如:加法+ 赋值= 三元运算符: 需要三个数据才可以进行操作的 ...

  4. 转载 初学者必看——最简单最清晰的Struts2项目搭建流程

    https://blog.csdn.net/key0323/article/details/50773499 在项目中想要使用Struts2框架,我该怎么做?从哪里开始?这是我的疑惑,我想也是很多初学 ...

  5. vue video全屏播放

    需求: 1.视频为长方形,页面初始化打开为横屏全屏播放视频. 2.微信不支持自动播放,故自动播放需求删除. 方法: 1.vue-video-player插件 因需求较简单,仅要求播放本地一个视频,故未 ...

  6. java解决高并发问题

    对于我们开发的网站,如果网站的访问量非常大的话,那么我们就需要考虑相关的并发访问问题了.而并发问题是绝大部分的程序员头疼的问题, 但话又说回来了,既然逃避不掉,那我们就坦然面对吧~今天就让我们一起来研 ...

  7. Python+Unittest+Requests+PyMysql+HTMLReport 多线程并发接口化框架

    整体框架使用的是:Python+Unittest+Requests+PyMysql+HTMLReport 多线程并发模式 主要依赖模块 Unittest.Requests.PyMysql.HTMLRe ...

  8. redis相关笔记(三.redis设计与实现(笔记))

    redis笔记一 redis笔记二 redis笔记三 1.数据结构 1.1.简单动态字符串: 其属性有int len:长度,int free:空闲长度,char[] bur:字符数组(内容) 获取字符 ...

  9. 【集群】Redis哨兵(Sentinel)模式

    主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用.这不是一种推荐的方式,更多时候,我们优先考虑哨兵模式. 一.哨兵 ...

  10. PHP opendir() 函数

    打开一个目录,读取它的内容,然后关闭: <?php$dir = "/images/"; // Open a directory, and read its contentsi ...