zoukankan      html  css  js  c++  java
  • JavaScript笔记(2)

    函数

    1.使用关键字function声明一个函数,如果需要传参数就传参,多个参数用逗号隔开,如果不需要传参数就不传

    //函数声明
    function name(num1,num2){
        //方法体
    }
    

    2.函数不能声明返回值类型,即使有返回值,也不能声明返回值类型

    3.函数只有在调用的时候才执行,只声明不调用是不会执行的

    4.如果函数没有返回值,那么这个函数执行过后返回undefined

    function add(num){
        if(num > 50){
            return num + 10;
        }
    }
    alert(add(45));
    //结果为:undefined
    

    5.函数不能声明参数的数据类型

    6.所有的函数都以小写字母开头

    7.函数的参数个数不是严格要求的,调用时实参的个数可以不等于形参的个数,实参多余形参时以第一个实参为准 ,实参少于形参个数时为undefined

    function add(num){
        if(num > 55){
            return num + 5;
        }
        else{
            return "成绩不合格";
        }
    }
    alert(add(45,65));
    //输出结果为:成绩不合格
    alert(add(65,45));
    //结果为:70
    

    8.自定义的函数不能跟JavaScript系统函数重名

    9.JavaScript中不存在重载,如果出现相同名字的函数,后面的会覆盖前面的

    function add(num){
        return num + 10;
    }
    function add(num1,num2){
        return num1 + num2;
    }
    alert(add(1,2));
    //结果为:3
    alert(add(1));
    //结果为:NaN
    //由于函数找不到参数,所以输出undefined(未定义),当undefined类型数据和一个数值类型数据进行运算时,undefined先转换成数值类型NaN(非数值),然后NaN和一个数值类型数据运算,结果还是NaN。
    

    10.变量提升:

    JavaScript中,函数及变量可以在使用后声明,也就是先使用再声明。

    myFunction();
    
    function myFunction(){
        var num = 10;
        console.log(num);
    }
    
    num = 10;
    console.log(num);
    var num;
    //输出:10
    

    JavaScript只有声明的变量会提升,初始化(赋值)的不会。

    console.log(num);
    var num = 10;
    //输出:undefined
    
    //上述代码等价于:
    var num;
    console.log(num);
    //只声明,未初始化,输出为:undefined
    num = 10;
    
    • 尽量不要使用变量提升

    JavaScript中异常处理

    • 语法:
    try{
        //异常的抛出
        //throw new Error();  自定义错误消息
    }
    catch{
        //异常的捕获与处理
    }
    finally{
        //结束处理
    }
    
    • 用法:
    function add(num){
        try{
            if(num > 50 && num <60){
                console.log(num + 10);
            }
            else{
                throw new Error("输入的值不正确");
            }
        }
        catch(err){
            console.log(err);
        }
        finally{
            console.log("end");
        }
        
    }
    add(40);
    

    对象

    JavaScript中所有事物都是对象:字符串、数值、数组、函数……

    此外,JavaScript允许自定义对象

    JavaScript中的内置对象:

    • String(字符串)

    • Date(日期)

    • Math(数学)

    • Number(数字)

    • Boolean(布尔型)

    • Array(数组)

    常用字符串(String)的处理:

    var str = "我想你,我在十点差三分的时候开始想你";
    console.log(str.length);
    
    //使用长度属性length来计算字符串的长度
    //输出:18
    
    console.log(str.charAt(2));
    
    //使用chatAt()方法返回在指定位置的字符
    //输出:你
    
    console.log(str.indexOf("想"));
    
    //使用indexOf()方法,从(0)号索引开始,返回某个指定的字符串值在字符串中首次出现的位置。  
    //输出:1
    
    console.log(str.indexOf("想",5));
    
    //从(5)号索引开始,包括(5)号索引,返回某个指定的字符串值在字符串中首次出现的位置。
    //输出:16
    
    console.log(str.lastIndexOf("你"));
    
    //使用lastIndexOf()从后向前搜索字符串,并从起始位置(0)号索引开始计算返回字符串最后出现的位置。
    //输出:17
    
    console.log(str.split("点"));
    
    //使用split()方法把字符串分割为字符串数组。
    //输出:
    // (2) ["我想你,我在十", "差三分的时候开始想你"]
    // 0: "我想你,我在十"
    // 1: "差三分的时候开始想你"
    // length: 2  
    
    console.log(str.substr(6,5));
    
    //substr(索引号,提取个数)从起始索引号开始(包括起始索引号的字符)提取字符串中指定数目的字符。  
    console.log(str.substring(6,11));  
    //substring(起始索引号, 结束索引号)提取起始索引号开始(包括起始索引号的字符)到结束索引号之前(不包括结束索引号的字符)的字符。
    

    Date(日期)对象:

    var today = new Date();
    console.log(today);
    
    //输出当前的日期和时间
    
    console.log(today.toLocaleString());
    
    //据本地时间格式,把 Date 对象转换为字符串。
    
    console.log(today.toLocaleDateString());
    
    //根据本地时间格式,把 Date 对象的日期部分转换为字符串。
    
    console.log(today.toLocaleTimeString());
    
    //根据本地时间格式,把 Date 对象的时间部分转换为字符串。
    
    console.log(today.getFullYear());
    
    //从 Date 对象以四位数字返回年份。
    
    console.log(today.getMonth());
    
    //从 Date 对象返回月份 (0 ~ 11)。
    
    console.log(today.getDate());
    
    //从 Date 对象返回一个月中的某一天 (1 ~ 31)。
    
    console.log(today.getHours());
    
    //返回 Date 对象的小时 (0 ~ 23)。
    
    console.log(today.getMinutes());
    
    //返回 Date 对象的分钟 (0 ~ 59)。
    
    console.log(today.getSeconds());
    
    //返回 Date 对象的秒数 (0 ~ 59)。
    

    Math对象:

    方法 描述
    abs(x) 返回 x 的绝对值。
    ceil(x) 对x进行向上取整。
    floor(x) 对 x 进行下向下取整。
    max(x,y,z,...,n) 返回 x,y,z,...,n 中的最高值。
    min(x,y,z,...,n) 返回 x,y,z,...,n中的最低值。
    pow(x,y) 返回 x 的 y 次幂。
    random() 返回 [0 ~ 1) 之间的随机数。
    round(x) 四舍五入。

    Number对象:

    • 使用isNaN()判断输入的是不是一个数字

    • 数字可以是数字或者对象

    var x = 369;
    var y = new Number(369);
    typeof(x);//返回Number
    typeof(y);//返回Object
    

    Boolean(布尔)对象:

    • 0 的布尔值 false

    • 1 的布尔值 true

    • 空字符串的布尔值 false

    • null 的布尔值 false

    • NaN 的布尔值 false

    • 字符串'false' 的布尔值true

    • undefined的布尔值是false

    Array(数组)对象:

    • JavaScript中数组就是一个Array对象

    • JavaScript中数组是动态的,是可变的,既可以当数组用,也可以当做“栈”或者“队列”来用
      数组操作的方法:
      1.arr[arr.length] = element;//在末尾追加新元素
      2.arr.push(element);//入栈,在末尾追加元素
      3.arr.pop();//出栈,返回末尾元素并删除
      4.arr.shift(element);//在数组前面追加一个元素
      5.arr.unshift();//返回数组第一个元素并删除

    • 通过指定数组名以及索引号码,你可以访问某个特定的元素

    • 在一个数组中你可以有不同的对象,可以在一个数组中包含对象元素、函数、数组

    var arr = new Array();
    arr[0] = 1;
    arr[1] = 2;
    arr[2] = "三";
    arr[3] = "四";
    console.log(arr.toString());
    
    //把数组转换为字符串,并返回结果。
    //返回:1,2,三,四
    
    console.log(arr.join("+"));
    
    //把数组转换成字符串,用括号内的字符隔开
    //返回:1+2+三+四
    

    遍历数组:

    1.for循环遍历数组

    var arr = new Array();
    arr[0] = 1;
    arr[1] = 2;
    arr[2] = "三";
    arr[3] = "四";
    for (var i = 0; i < arr.length; i++) {
        console.log(arr[i]);
    }
    

    2.for……in语句按顺序遍历数组

    var arr = new Array();
    arr[0] = 1;
    arr[1] = 2;
    arr[2] = "三";
    arr[3] = "四";
    for(var i in arr){
        console.log(arr[i]);
    }
    
  • 相关阅读:
    WinForm简单的打包和部署
    C#实现获取枚举的描述
    C#实现序列化对象到XML文档与反序列化
    cookie与session的区别与联系
    windows环境下创建多个Redis实例
    struts2中的constant配置详解
    PowerDesigner使用教程
    配置JAVA环境变量
    CAS实现SSO单点登录原理
    OVER(PARTITION BY)函数用法
  • 原文地址:https://www.cnblogs.com/discourage/p/11524107.html
Copyright © 2011-2022 走看看