JavaScript(4)

JavaScript

Java 数组的遍历

1.遍历


for(var i=0 ; i<arrr.length ; i++)
    //代码块

for(var i in arr)
    //代码块

forEach ECMAScript5.0新特性
不支持break/continue
在低版本IE中无法使用

2.常用方法


    JOIN
    var arr = ["afsd", 23, 6.0, -2];
    var str = arr.join("+");
    // str = "afsd+23+6.0+-2";

    SPLIT
    var arr2 = str.split("+");//分割字符串,返回数组类型


    REVERSE
    var arr3 = arr2.reverse();
    //对数组本身有影响,arr2 与 arr3一样

    SORT
    //通过一个函数作为参数来调用
    var points = [40,100,1,5,25,10];
    points.sort(function(a,b){return a-b}); 

    CONCAT
    // 连接两个或更多的数组,并返回结果
    var hege = ["Cecilie", "Lone"];
    var stale = ["Emil", "Tobias", "Linus"];
    var kai = ["Robin"];
    var children = hege.concat(stale,kai);


    SLICE
    从已有的数组中返回选定的元素,不影响原数组
    slice(start, end);

    在数组中读取元素
    var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
    var citrus = fruits.slice(1,3);
    // Orange,Lemon

    使用负值从数组中读取元素
    var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
    var myBest = fruits.slice(-3,-1);
    // Lemon,Apple


    SPLICE
    用于插入、删除或替换数组的元素。
    splice(index, howmany, (item1, ..., itemX))
    从哪里删,删多少,添加什么

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.splice(2,2);
    // Banana,Orange

    PUSH
    可向数组的末尾添加一个或多个元素,并返回新的长度

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.push("Kiwi")
    fruits 结果输出:
    Banana,Orange,Apple,Mango,Kiwi


    POP
    用于删除数组的最后一个元素并返回删除的元素

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.pop();
    fruits 结果输出:
    Banana,Orange,Apple

    MAP
    返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值,不会改变原数组
    类似Python里面的MAP函数
    var numbers = [4, 9, 16, 25];

    function myFunction() {
        x = document.getElementById("demo")
        x.innerHTML = numbers.map(Math.sqrt);
    }
    输出结果为:
    2,3,4,5

    REDUCE
    接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值
    var numbers = [65, 44, 12, 4];

    function getSum(total, num) {
        return total + num;
    }
    function myFunction(item) {
        document.getElementById("demo").innerHTML = numbers.reduce(getSum);
    }
    输出结果:
    125


    SOME
    用于检测数组中的元素是否满足指定条件(函数提供)

    var ages = [3, 10, 18, 20];

    function checkAdult(age) {
        return age >= 18;
    }

    function myFunction() {
        document.getElementById("demo").innerHTML = ages.some(checkAdult);
    }
    输出结果为:
    true

    INDEXOF
    返回某个指定的字符串值在字符串中首次出现的位置
    如果没与搜索到则返回 -1

    查找数组中的 "Apple" 元素:
    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    var a = fruits.indexOf("Apple");
    a 结果输出:
    2

3.数组排序


  • 冒泡排序

    var arr = [2,5,0,-1,6];
    for(var i=0;i<arr.length;i++)
        for(var j=i;j<arr.length;j++)
            if(arr[j] > arr[i]) {
                var tmp = arr[j];
                arr[j] = arr[i];
                arr[i] = tmp;
            }
    
    
    for(var i=0;i<arr.length;i++)
        for(var j=i+1;j<arr.length;j++)
            if(arr[j] < max) {
                var tmp = arr[j];
                arr[j] = arr[i];
                arr[i] = tmp;
            }
    

常用的类

1.String


    charAt(3):获取下标为3的字符
    charCodeAt(3):获取下标为3的字符的ASCII码,返回指定位置的字符的Unicode编码,返回值在0~65535之间
    fromCharCode(94):将ASCII码转换成字符

    查找字串
    indexOf():
    lastIndexOf():

    替换
    replace():

    截取字串
    subString(3):表示从下标为3的位置开始截取。不影响原字符串

    大小写转换
    toLowerCase():
    toUpperCase();

    字符串大小比较
    localCompare():如果字符串在字母表中应该排在字符串参数
    之前 -1 等于 0 之后 1

    字符串分割
    split():

2.Math


    round():
    random():
    max(x,y,z):
    min(x,y,z):
    sqrt(x):
    floor(x):
    ceil(x):
    pow(x, y):

3.Date


    getFullYear()
    使用 getFullYear() 获取年份。
    getTime()
    getTime() 返回从 1970 年 1 月 1 日至今的毫秒数。
    setFullYear()
    如何使用 setFullYear() 设置具体的日期。
    toUTCString()
    如何使用 toUTCString() 将当日的日期(根据 UTC)转换为字符串。
    getDay()
    如何使用 getDay() 和数组来显示星期,而不仅仅是数字。
    Display a clock
    如何在网页上显示一个钟表。

    Date.parse("2017-06-29")
    返回是该日期距离世界时间的毫秒值

    getDay()
    getHours()
    getMinutes()

    toLocaleTime()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值