数组:
    
    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. DNS安装配置主从

    准备环境  关闭防火墙 挂载一下 更改配置文件 安装dns服务 更改配置文件  先复制保存一份

  2. 某个应用的CPU使用率居然达到100%,我该怎么做?(三)

    某个应用的CPU使用率居然达到100%,我该怎么做?(三) 1. 引 你们好,可爱的小伙伴们^_^! 咱们最常用什么指标来描述系统的CPU性能呢?我想你的答案,可能不是平均负载,也不是CPU上下文切换 ...

  3. Codeforces 356D 倍增优化背包

    题目链接:http://codeforces.com/contest/356/problem/D 思路(官方题解):http://codeforces.com/blog/entry/9210 此题需要 ...

  4. vue学习笔记(五)— 组件通信

    关于vue父子组件通信 作者:狐狸家的鱼 本文链接:vue组件通信 GitHub:sueRimn 如果组件是一个单页面,组件之间存在父子关系,数据传递就需要根据父子不同的地位使用不同的办法. 借助新建 ...

  5. ATM&购物商城程序

    模拟实现一个ATM + 购物商城程序 额度15000或自定义 实现购物商城,买东西加入购物车,调用信用卡接口转账 可以体现,手续费5% 支持多账户登录 支持账户间转账 记录每月日常消费流水 提供还款接 ...

  6. js 页面向下滚动

    向下滚动一段距离 距离顶部距离 var scrollTop=document.documentElement.scrollTop||document.body.scrollTop; <scrip ...

  7. 每天一个linux命令:nl(12)

    nl nl命令读取 file 参数(缺省情况下标准输入),计算输入中的行号,将计算过的行号写入标准输出.在输出中,nl命令根据您在命令行中指定的标志来计算左边的行.输入文本必须写在逻辑页中.每个逻辑页 ...

  8. STM32的结构和启动模式

    一.STM32F10x功能模块 32位的Cortex-M3微处理器: 可嵌套的向量中断控制器(NVIC)和60个可屏蔽中断且有16个可编程优先级: 内嵌内存: FLASH:最大512K字节 STAM: ...

  9. 常见sql操作

    1. select '`'||b.mrchno 商户号, b.name 商户名称, b.contact3 注册地址联系人, '`'||b.telno1 邮寄地址联系电话, a.MRCHT_NAME X ...

  10. 工程师技术(三):独立Web站点的快速部署、虚拟Web主机的部署、配置网页内容访问、使用自定Web根目录、配置安全Web服务、部署并测试WSGI站点

    一.独立Web站点的快速部署 目标: 本例要求为 http://server0.example.com 配置Web站点,要求如下: 1> 从http://classroom/pub/materi ...