(17.04.20)数组方法、特性、json与数组的区别、jso

2017-11-04  本文已影响0人  张不困_

回顾:

    字符串  数组  json

字符串方法:  
    
    charAt(下标)---找字符串

    indexOf(小字符串)----返回的位置(下标)
    ---默认从前面找

    lastIndexOf(小字符串)---下标
    ---默认从后面找(出现的第一次)

    substring(起始,结束)
    包含起始,不包含结束

    substring(起始)----开始到最后

    split(‘切分方法’)---切分完字符串以后就变成数组

    转小:toLowerCase()
    大:toUpperCase()

数组:

  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.join:拼接 得到字符串!

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

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.数组链接cincat

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!

  1. 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

上一篇下一篇

猜你喜欢

热点阅读