前端学习(十八)js的json(笔记)

时间:2022-02-07 18:45:28

json:

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

arr[0];

2.有length

3.普通for

4.下标数字

5.添加删除

splice

json:
        1.无序
        var json={b:2,a:1,c:3}

json.a

2.没有length

3.for in

4.字符串

5.添加删除:

json.name=1

delete json.name

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

json可以设置样式L:
    
    function setStyle(obj,json){
        for(var name in json){
            obj.style[name]=json[name];
        }
    }

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

function show(a){---形参
    alert(a)
}
show(12)---实参

--------
function show(){
    alert(arguments[2])---45
}
show(12,23,45,67)

系统看:arguments=[12,23,45,67]  实参数组

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

获取元素的三种方法:
    
    1.获取一个元素:  ById(id)
    2.获取一组元素:  ByTagName(div)
    3.获取一组元素:   ByClassName(class)

第三种不兼容ie8-

处理兼容:
    
    function findInArr(arr1,str){
        for(var i=0;i<arr1.length;i++){
            if(arr1[i]==str){
                return true;
            }
        }    
        return false;
    }

function getByClass(oParent,sclass),{

if(oParent.getElementsByClassName){
            return oParent.getElementsByClassName(sclass);
        }else{
            var aEle=oParent.getElemetnsByTagName('*');

var arr=[];

for(var i=0;i<aEle.length;i++){
                var aClass=aEle[i].className.split(' ');

if(findInArr(aClass,sclass)){
                    arr.push(aEle[i]);
                }

}

return arr;
        }

}

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

var  aRed=getByClass(document.body,'red');

=========================================
设置时间:

var oDate=new Date();
    
    //oDate.setFullYear(2017,4,1);
    
    //oDate.setFullYear(2088);
    
    //oDate.setMonth(9)
    
    oDate.setDate(30);
    
    alert(oDate);

***时分秒也可以单独设置!

题:
    
    这个月有多少天?

代码弹出这个月最后一天!

先设置?

4月          5月

27,28,29,30。1,2,3,4,5,6,7,8

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

本月的第一天是周几?

1.把今天设置到这个月第一天
2.弹

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

eval 可以把字符串解析成js识别的程序!

12+5=17

(12)+5=17

(12)+(5)=17

==================================================
var arr=[1,2,3,4,5,6,7,8,9]

把里面奇数给删除了 !

-----------------------------------------
排序:

系统自带:
    arr.sort(function(n1,n2){
        return n1-n2;
    })

自己写一个:

function findInIndex(arr1,start){
        var iMin=arr1[start];
        var minIndex=start;
        
        for(var i=start+1;i<arr1.length;i++){
            if(iMin>arr1[i]){
                iMin=arr1[i];
                minIndex=i;    
            }    
        }
        return     minIndex;
    }

//找最小数!
    var arr=[6,1,5,34,-4,88,23,0,567];
    
    for(var i=0;i<arr.length;i++){
        var n=findInIndex(arr,i);
        
        var tmp;
        
        tmp=arr[n];
        arr[n]=arr[i];
        
        arr[i]=tmp;
            
    }
    
    alert(arr);

------------------------------------------
数组的去重!

var arr=[2,3,1,23,3,2,2,3,23,56,78,56,56,23];

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

1.var  json={a:1,b:2,c:3}

2. var  json={a:'1',b:'2',c:'3'}

3. var  json={'a':'1','b':'2','c':'3'}

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