数组:
    
    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. Linux学习笔记0-CentOS7关闭防火墙

    关闭防火墙 systemctl stop firewalld.service //停止firewall systemctl disable firewalld.service //禁止firewall ...

  2. Nginx实现rewrite重写

    目录 Rewrite基本概述 Rewrite标记Flag Rewrite规则实践 Rewrite场景示例 Rewrite规则补充 rewrite优先级实战 Rewrite基本概述 什么是rewrite ...

  3. linux 用户空间与内核空间——高端内存了解

    Linux 操作系统和驱动程序运行在内核空间,应用程序运行在用户空间,两者不能简单地使用指针传递数据,因为Linux使用的虚拟内存机制,用户空间的数据可能被换出,当内核空间使用用户空间指针时,对应的数 ...

  4. Goldengate 应用环境 mysql to oracle

    前言 一个需求,mysql的某些表,实时同步至oracle,于是就产生了这篇文章,安装过程中,走了些弯路,原因是没太深刻理解,官方提供安装步骤所代表的意义. 环境 源端:mysql-server 5. ...

  5. OpenCV常用基本处理函数(8)图像变换

    傅里叶变换 傅里叶变换在实际中有非常明显的物理意义,设f是一个能量有限的模拟信号,则其傅里叶变换就表示f的频谱. 图像的频率是表征图像中灰度变化剧烈程度的指标,是灰度在平面空间上的梯度.如:大面积的沙 ...

  6. RGBA的值0-255范围如何转换成0-1范围

    这样一个rgba(1,0,0,1) 如果我们要把它转换成 0-255范围 就是rgb分别乘以255 就是 rgba(255,0,0,1) 0-255转0-1范围 如 rgba(34,56,56,1)转 ...

  7. 阿里云ssh免密登陆突然无效

    [root@node03 ~]# ssh-copy-id node02 root@node02's password: sh: .ssh/authorized_keys: Permission den ...

  8. 过滤PostgreSQL配置文件中被注释的部分

    以下正则可以过滤掉PostgreSQL配置文件被注释的部分,包括'#'前带空格的部分,但参数前带空格的部分不会过滤掉 postgres@linux-ij7j:/opt/pg8122/data> ...

  9. js对div取值与赋值

    js对div取值与赋值 因为JavaScript运行时,id="test1" 的那个div元素可能还没解析和加载,js加载是有顺序的.只需把 js 整个搬到 后面即可. 还有一个特 ...

  10. #include和前置声明(forward declaration)

    #include和前置声明(forward declaration) 1.    当不需要调用类的实现时,包括constructor,copy constructor,assignment opera ...