zoukankan      html  css  js  c++  java
  • JavaScript对象

    var arrname=new Array('a','v','b');//创建数组对象
    console.log(arrname);//(3) ["a", "v", "b"]

    var dd=new Array('周一','周二');//创建数组对象
    console.log(dd)//(3) ["a", "v", "b"]

    var cc=new Date();//创建时间对象
    console.log(cc)//Tue Aug 08 2017 14:09:03 GMT+0800 (中国标准时间)

    var bb=new String('hello world')//创建字符串对象
    console.log(bb)

    var aa=new Number.MAX_VALUE;//利用数字对象获取可表示的最大数
    console.log(aa)

    3.1 string对象
    字符串对象的创建
      1.变量='字符串'
      2.字符对象名称=new String(字符串)
      var str1='hello world';
      var str2=new String('hello world');
    字符串对象的属性和函数
      x.length --获取 字符串的长度
      
    join 方法:将数组元素拼接长字符串
    var a1=[1,2,3]
    var s1=a1.join('-');
    alert(s1);//1-2-3;

    var a2=[1,2,3]
    var b=a2.concat(4,5);
    alert(a2.toString());//1,2,3
    alert(b.toString());//1,2,3,4,5

    数组排序-reverse sort:

    var a3=[22,450,911,45,9];

    alert(a3.reverse())//把原数组顺序倒着排
    console.log(a3.toString());
    console.log(typeof a3)//object
    console.log(a3.sort());//(5) [22, 45, 450, 9, 911]
    比较第一个字符的ASCII码,sort() 在没有参数时,
    返回的结果是按升序来排列的。
    在使用sort()进行排序的时候会调用toString()函数将其值转换成字符串在进行比较,
    是按ASCII进行比较的。


    比较函数应该具有两个参数 a b
    其返回值如下:
    a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
    a 等于 b,则返回 0
    a 大于 b,则返回一个大于 0 的值。

    var a4=[1,5,2,100]
    console.log(a4.sort())

    var array1=[0,2,1,0.5];
    function compact(v1,v2)
    {
    if (v1<v2){
    return -1;

    }else if (v1>v2){
    return 1;
    }else{
    return 0;
    }
    }
    alert(array1.sort(compact)) //0,0.5,1,2



    ------------
    function sortNumber(a, b){return a - b; }
    这里返回的是他们的差值,
    如果是小于0的值,就会将a排在前面,
    如果大于0,就会将b排在前面,
    如果是0的话,就随便。(冒泡排序法!!)
    -------------

    // function sortnumber(a,b) {return a-b}
    // var arr=new Array(3)
    // arr[0]='10';
    // arr[1]='4';
    // arr[2]='1';
    // console.log(arr);
    // console.log(arr.sort(sortnumber));//["1", "4", "10"]
    //
    // 数组切片操作:slice
    //
    // var arr1=['a','b','c','d','e','f']
    // var arr2=arr1.slice(2,4)
    // var arr3=arr1.slice(5);
    // var arr4=arr1.slice(2,-1);
    // alert(arr2.toString())//c,d 取头不取尾
    // alert(arr3.toString())//f
    // console.log(arr4)//["c", "d", "e"]不取尾
    //
    // 删除子数组:splice
    //
    // x. splice(start, deleteCount, value, ...)
    //
    // 使用注解
    //
    // x代表数组对象
    // splice的主要用途是对数组指定位置进行删除和插入
    // start表示开始位置索引
    // deleteCount删除数组元素的个数
    // value表示在删除位置插入的数组元素
    // value参数可以省略
    //
    // var a=['a','b','c','d','e','f'];
    // a.splice(1,2)//删除索引为1,2 的值
    // alert(a.toString());//a,d,e,f
    // a.splice(1,1)
    // alert(a.toString());//a,e,f
    // a.splice(2,1)
    // alert(a.toString());
    // a.splice(2,1,3,4)
    // alert(a.toString())//a,b,3,4,d,e,f
    // a.splice(2,1,3,4,5)
    // alert(a.toString())//a,b,3,4,5,d,e,f
    //
    //
    // 数组的pushhe pop;
    // push pop这两个方法模拟的是一个栈操作
    //
    // x.push(value, ...) 压栈
    // x.pop() 弹栈
    // 使用注解
    //
    // x代表数组对象
    // value可以为字符串、数字、数组等任何值
    // push是将value值添加到数组x的结尾
    // pop是将数组x的最后一个元素删除
    //
    // var arr1=[1,2,3];
    // arr1.push(4,5);// 把值加到数组最后
    // alert(arr1);//1,2,3,4,5
    //
    // arr1.push([6,7]);//可以加入任意值
    // alert(arr1);//1,2,3,6,7
    // arr1.pop();//弹出最后面的值
    // alert(arr1);//1,2
    //
    //
    //
    // 插入值unshift,删除值shift
    // x.unshift(value,...)
    // x.shift()
    //
    //
    // x代表数组对象
    // value可以为字符串、数字、数组等任何值
    // unshift是将value值插入到数组x的开始
    // shift是将数组x的第一个元素删除
    //
    // var arr1=[1,2,3];
    // arr1.unshift(4,5);
    // alert(arr1); //结果为"4,5,1,2,3"
    //
    // arr1. unshift([6,7]);
    // alert(arr1); //结果为"6,7,4,5,1,2,3"
    //
    // arr1.shift();
    // alert(arr1); //结果为"4,5,1,2,3"
    //
    //
    // js中数组的特性
    // java中数组的特性, 规定是什么类型的数组,就只能装什么类型.只有一种类型.
    // js中的数组特性1: js中的数组可以装任意类型,没有任何限制.
    // js中的数组特性2: js中的数组,长度是随着下标变化的.用到多长就有多长.
    // var arr5 = ['abc',123,1.14,true,null,undefined,
    // new String('1213'),
    // new Function('a','b','alert(a+b)')];
    // alert(arr5.length);//8
    // arr5[10] = "hahaha";
    // alert(arr5.length); //11
    // alert(arr5[9]);// undefined


    //Date对象

    //1.不指定参数;
    // var nowd1=new Date();
    // alert(nowd1.toLocaleString( ));
    //返回当前机器的时间 2017/8/8 下午7:06:41

    //2.参数为日期字符串
    // var nowd2=new Date("2004/3/20 11:12");
    // alert(nowd2.toLocaleString( ));
    //2004/3/20 上午11:12:00

    // var nowd3=new Date("04/03/20 11:12");
    // alert(nowd3.toLocaleString( ));
    //2020/4/3 上午11:12:00

    //方法3:参数为毫秒数
    // var nowd3=new Date(5000);
    // alert(nowd3.toLocaleString( ));
    //1970/1/1 上午8:00:05

    // alert(nowd3.toUTCString());
    //Thu, 01 Jan 1970 00:00:05 GMT

    //方法4:参数为年月日小时分钟秒毫秒
    // var nowd4=new Date(2004,2,20,11,12,0,300);
    // alert(nowd4.toLocaleString( ));//毫秒并不直接显示
    // 2004/3/20 上午11:12:00

    //toLocaleString() 方法可根据本地时间把 Date 对象转换为字符串,并返回结果。


    //getMonth()函数的返回值为Number类型,返回当前Date对象的月份值。
    // 该值介于 [0, 11] 之间。
    //
    //其中,0 ~ 11 分别表示 1月至12月。


    // 获取日期和时间
    //getDate() 获取日
    //getDay () 获取星期
    //getMonth () 获取月(0-11
    //getFullYear () 获取完整年份
    //getYear () 获取年
    //getHours () 获取小时
    //getMinutes () 获取分钟
    //getSeconds () 获取秒
    //getMilliseconds () 获取毫秒
    //getTime () 返回累计毫秒数(1970/1/1午夜)


    // function changeNum(num) {
    // if (num<10){
    // return '0'+num;
    // }else{
    // return num;
    // }
    // }
    // alert(changeNum(31))

    // function parseweek(week) {
    //
    // var arr=['1','2','3','4','5','6','周日']//利用了索引取出值
    // return arr[week-1]//输入的数字与索引对应,输入1,得到周一
    // }

    //match对象,数学方法.
    //abs(x) 返回数的绝对值。
    //exp(x) 返回 e 的指数。
    //floor(x)对数进行下舍入。
    //log(x) 返回数的自然对数(底为e)。
    //max(x,y) 返回 x y 中的最高值。
    //min(x,y) 返回 x y 中的最低值。
    //pow(x,y) 返回 x y 次幂。
    //random() 返回 0 ~ 1 之间的随机数。
    //round(x) 把数四舍五入为最接近的整数。
    //sin(x) 返回数的正弦。
    //sqrt(x) 返回数的平方根。
    //tan(x) 返回角的正切。


    //////////////
    //function 对象
    // function 函数名(参数) {
    // 函数体;
    // return 返回值;
    // }


    // function func1(name) {
    //
    // alert('hello'+ name );
    // return 'gu'
    // }
    // ret =func1('gu');
    // alert(ret);
    //
    // alert(func1.length)//函数属于引用类型,也有属性和方法,length声明了函数的参数个数


    // function a(a,b){
    // alert(a+b);
    }
    // a(1,2);
    // a(2,2,3)
    // a(1);//NaN
    // a();NaN
    //只要函数名写对即可,参数怎么填都不报错.


    //arguments不用考虑实参传入的参数与形参是否相同,

    function add(a,b){
    console.log(a+b);
    console.log(arguments.length);
    console.log(arguments);
    }
    add(1,2)



     function sortnumber(a,b) {return a-b}
    var arr=new Array(3)
    arr[0]='10';
    arr[1]='4';
    arr[2]='1';
    console.log(arr);
    console.log(arr.sort(sortnumber));//["1", "4", "10"]

    数组切片操作:slice


    var arr1=['a','b','c','d','e','f']
    var arr2=arr1.slice(2,4)
    var arr3=arr1.slice(5);
    var arr4=arr1.slice(2,-1);
    alert(arr2.toString())//c,d 取头不取尾
    alert(arr3.toString())//f
    console.log(arr4)//["c", "d", "e"]不取尾

    删除子数组:splice


    x. splice(start, deleteCount, value, ...)

    使用注解

    x代表数组对象
    splice的主要用途是对数组指定位置进行删除和插入
    start表示开始位置索引
    deleteCount删除数组元素的个数
    value表示在删除位置插入的数组元素
    value参数可以省略

    var a=['a','b','c','d','e','f'];

    a.splice(1,2)//删除索引为1,2 的值
    alert(a.toString());//a,d,e,f
    a.splice(1,1)

    alert(a.toString());//a,e,f
    a.splice(2,1)

    alert(a.toString());
    a.splice(2,1,3,4)
    alert(a.toString())//a,b,3,4,d,e,f
    a.splice(2,1,3,4,5)

    alert(a.toString())//a,b,3,4,5,d,e,f


    数组的pushhe pop;

    push pop这两个方法模拟的是一个栈操作

    x.push(value, ...) 压栈
    x.pop() 弹栈
    使用注解

    x代表数组对象
    value可以为字符串、数字、数组等任何值
    push是将value值添加到数组x的结尾
    pop是将数组x的最后一个元素删除

    var arr1=[1,2,3];

    arr1.push(4,5);// 把值加到数组最后
    alert(arr1);//1,2,3,4,5

    arr1.push([6,7]);//可以加入任意值
    alert(arr1);//1,2,3,6,7
    arr1.pop();//弹出最后面的值
    alert(arr1);//1,2



    插入值unshift,删除值shift

    x.unshift(value,...)
    x.shift()


    x代表数组对象
    value可以为字符串、数字、数组等任何值
    unshift是将value值插入到数组x的开始
    shift是将数组x的第一个元素删除

    var arr1=[1,2,3];

    arr1.unshift(4,5);
    alert(arr1); //结果为"4,5,1,2,3"

    arr1. unshift([6,7]);

    alert(arr1); //结果为"6,7,4,5,1,2,3"

    arr1.shift();

    alert(arr1); //结果为"4,5,1,2,3"


    js中数组的特性
    java中数组的特性, 规定是什么类型的数组,就只能装什么类型.只有一种类型.

    js中的数组特性1: js中的数组可以装任意类型,没有任何限制.
    js中的数组特性2: js中的数组,长度是随着下标变化的.用到多长就有多长.
    var arr5 = ['abc',123,1.14,true,null,undefined,
    new String('1213'),
    new Function('a','b','alert(a+b)')];
    alert(arr5.length);//8
    arr5[10] = "hahaha";

    alert(arr5.length); //11
    alert(arr5[9]);// undefined
  • 相关阅读:
    json数组对象和对象数组
    C#中的List<string>泛型类示例
    Ajax异步更新网页(使用原生JavaScript)
    Ajax基础
    jQuery的动画效果
    jQuery事件绑定
    jQuery节点更新
    jQuery选择器
    json数据
    jQuery中的html()、text()和val()的用法
  • 原文地址:https://www.cnblogs.com/gyh04541/p/7306629.html
Copyright © 2011-2022 走看看