数组:
    
    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. 如何打开mongo运行环境

    新建一个文件夹,例如我的在E:\2016web\myapp\src\database 打开数据库 mongod --dbpath=E:/2016web/myapp/src/database 在新开一个 ...

  2. APScheduler的简单记录

    此工具作为 定时任务调度 系统,在日常业务中经常使用,如定时获取第三方数据,定时清理数据 等等: 定时任务 和 业务逻辑 编写方式 一般有2种: 以 定时 清理db数据为例,在flask中,如下: 1 ...

  3. codelite配置信息

    codelite下编译执行wxwidgets库需要修改链接库如下: 原来的c++ compiler配置-g;-O0;-Wall;$(shell wx-config --cflags --debug) ...

  4. webshell yar

    webshell D盾 http://www.d99net.net/

  5. mysql协议解析

    目录 目录 1 交互过程 1.1 握手认证阶段 1.2 命令执行阶段 2 基本类型 2.1 整型值 2.2 字符串(以NULL结尾)(Null-Terminated String) 2.3 二进制数据 ...

  6. PHP实现笛卡尔积算法

    概念 在数学中,两个集合X和Y的笛卡儿积(Cartesian product),又称直积,表示为 X × Y.设A.B是任意两个集合,在集合A中任意取一个元素x,在集合B中任意取一个元素y,组成一个有 ...

  7. 牛客挑战赛33 F 淳平的形态形成场(无向图计数,EGF,多项式求逆)

    传送门: 淳平的形态形成场 题解: 把a排序后,直接统计答案恰好为a[i]并不好做,可以统计答案>a[i]的方案数,设为\(f[i]\). 即不存在一个联通块,所有的权值都<=a[i]. ...

  8. 【Dart学习】--Dart之正则表达式相关方法总结

    一,部分属性 RegExp exp = new RegExp(r"(\w+)"); 返回正则表达式的哈希码 print(exp.hashCode); 正则表达式是否区分大小写 pr ...

  9. ubuntu下安装apidoc

    1.到http://nodejs.cn/download/下载nodejs 可以复制链接 使用wget下载更加快速 选择对应的操作系统位数 下载到/usr/local/src 此处强烈不建议编译安装 ...

  10. 【已转移】【Java架构:基础技术】一篇文章搞掂:Java 8

    本文篇幅较长,建议合理利用右上角目录进行查看(如果没有目录请刷新). 一.Java的历史与演变 目的:为完全了解Java,需要理解Java的诞生原因.成型动力以及他继承的思想. 计算机语言的创新与发展 ...