美文网首页
Java web之JavaScript

Java web之JavaScript

作者: 爱比立务 | 来源:发表于2020-02-11 23:15 被阅读0次

    一、概述与作用

    JavaScript(简称“JS”) 是一种解释型或即时编译型的编程语言。
    它是一门脚本语言(开发Web页面的语言)。

    • 作用:
      1、验证数据
      2、加强用户体验
      3、增加互动

    二、使用

    1、使用的分类

    (1)行内(标签内)

    元素上使用js代码

    (2)内部(html内任何外置)

    html内部定义script标签对,标签对中定义js代码

    (3)外部(head标签内外连js文件)

    外部定义js文件,文件中定义js代码,在使用的html中使用script标签对用来引入

    2、使用问题

    (1)使用位置:

    1)任意位置
    2)推荐使用位置:
    • head中,便于后期维护(head中配合window.onload使用,确保加载完成)。
    • body结束前,页面所以内容加载完成之后。

    (2)使用注意:

    • 一个script标签不能及用来引入外部js文件,又用来定义js代码

    三、JavaScript数据类型

    1、基本数据类型

    (1)Number(控制台中显示蓝色)

    1)Number:表示整数,小数
    2)NaN :表示(not a number)
    • 1.赋值NaN
    • 2.运算无法计算正确的结果

    (2)String(控制台中显示黑色)

    • 字符串要定义在一对引号当中,''|""都可以

    (3)Boolean

    • true | false

    (4)Null 类型

    • 1.赋值
    • 2.获取不到元素

    (5)Undefined (指 未定义 的类型)

    • 1.赋值
    • 2.只声明不赋值存在默认值

    2、复合数据类型和函数类型

    (1)对象类型(Object)

    • 对象中的内容都是以键值对的形式存在的:key:value
    • 多个键值对之间使用个逗号进行分隔
    • 最后一个键值对后面不需要添加逗号
    • key属性名,满足标识符的命名规范
    • key和value其实都是字符串
    • key如果满足标识符的命名规范,前后引号可以省略

    (2)函数类型(方法)

    四、类型转换

    1、显示类型转换:

    通过其他方式或函数,手动让数据改变其类型(注意:js中对象类型和函数类型不参与类型转)

    • 任意类型都可以转换以下三种类型
      String(数据)
      Number(数据)
      Boolean(数据)

    2、隐式类型转换

    目的不是为改变数据的类型,但是执行过程中会隐式改变类型(+ - * / ..)

    五、运算符

    1、+ 运算符

    字符串的连接符使用

    2、= == === 之间的区别:

    • = 赋值
    • == 比较数据是否相同
    • === 比较数据和类型是否都相等(先比较类型,后比值)

    3、!运算符

    ! 非 取反
    !! 不变
    !!!取反

    4、逻辑运算符: && ||

    • java中逻辑运算符两边的操作数必须为boolean类型的
    • js中中逻辑运算符两边的操作数可以都是boolean,也可以有其他类型的数据参与,如果有, 结果肯定为其中一个操作数

    (1)&& 一个为false就是false

    第一个操作数转为boolean,为false,结果就为第一个操作数的值为true,,结果就为第二个操作数的值

    (2)|| 一个为true就是true

    第一个操作数转为boolean,为true,结果就为第一个操作数的值为false,结果就为第二个操作数的值

    5、{} 块

    • java中{}自成作用域
    • js中块不是作用域,作用域在js中之间函数function

    六、数组与数组方法

    1、数组

    (1)数组的属性

    • 可以存储任意个任意类型的数据,长度可变
    • 数组有序: 索引顺序 从0开始
    • 根据索引操作数组,当索引非0~n的整数,作为数组的自定义属性

    (2)创建数组的方式:

    • new Array(); 构建一个空的新数组
    • new Array(数据1,数据2..) 创建的同时赋值
    • [数据1,数据2...] 字面量的创建方式 --推荐

    (3)数组的遍历:

    • 1.普通for
    • 2.for .. in
    • 3.foreach

    2、数组常用方法

    (1)slice 截取(切片数组,原数组不发生变化)

    • 一个参数 作为起始索引,从参数索引位置开始,截取到最后,返回
    • 两个参数 第一个参数作为其实索引,第二个参数结束索引,结束索引不包含

    (2)splice 剪接数组(原数组变化,可以实现前后删除效果 )

    • 一个参数 作为起始索引,从参数索引位置开始,截取到最后,返回,原数组为截取后剩下的
    • 两个参数 第一个参数作为其实索引,第二个参数作为个数
    • 3~n个参数 重第一个参数位置开始,拿第二个参数个,替换成为第三个参数及以后的数据

    七、函数及注意事项

    1、函数

    1)函数声明
                    function 函数名 (参数列表) {
                        函数体;
                        [return 返回值;]
                    }
    
    2)函数调用:
      1. 函数名(实参);
      1. 转换函数表达式,在最后添加()自执行(在函数声明的前面添加~|!|+|-,在函数声明天后添加()包裹)
    2)函数表达式的方式
                    var 变量名 = function 函数名 (参数列表) {
                        函数体;
                        [return 返回值;]
                    };
    

    函数名一般省略,不可以通过函数进行调用,只能通过变量名,函数名可以在函数内部进行递归使用

    2)函数表达式的调用:
    • 1.通过变量名调用 变量名(参数);
    • 2.函数表达式最后添加(),直接直接这个函数,自执行

    注意:参数省略var关键字

    (2)函数的注意事项

    • 函数的作用域提升:只有函数声明的方式才有函数作用域的提升,函数表达式没有,提升到当前作用域的最上面

    • 若函数形参同名(一般不会这么做),在使用时以最后一个值为准。

    • 函数的参数可以定义默认值

    • 值传递

      var num = 12;
      function change(n) {
        n = 30;
      }
      change(12);
      console.log('值传递-----' + num);  //12 
      
    • 引用传递

    相关文章

      网友评论

          本文标题:Java web之JavaScript

          本文链接:https://www.haomeiwen.com/subject/iemffhtx.html