• 前端JavaScript部分简单整理


    Web前端有三层:
    HTML:从语义的角度,描述页面结构
    CSS:从审美的角度,描述样式(美化页面)
    JavaScript:从交互的角度,描述行为(提升用户体验)

    发明人:布兰登 • 艾奇

    JavaScript入门易学性
    JavaScript对初学者比较友好。
    JavaScript是有界面效果的(比如C语言只有白底黑字)。
    JavaScript是弱变量类型的语言,变量只需要用var来声明。而Java中变量的声明,要根据变量的类型来定义。

    JavaScript是前台语言

    JavaScript的组成
    ECMAScript:JavaScript的语法标准。包括变量、表达式、运算符、函数、if语句、for语句等。
    DOM:操作网页上的元素的API。比如让盒子移动、变色、轮播图等。
    BOM:操作浏览器部分功能的API。比如让浏览器自动滚动。

    JavaScript的特点
    (1)简单易用:可以使用任何文本编辑工具编写,只需要浏览器就可以执行程序。
    (2)解释执行(解释语言):事先不编译、逐行执行、无需进行严格的变量声明。
    (3)基于对象:内置大量现成对象,编写少量程序可以完成目标


    # alert弹出“警告框”
    console.log("")控制台输出
    用户输入:prompt()语句


    语法规则
    (1)JavaScript对换行、缩进、空格不敏感。
    备注:每一条语句末尾要加上分号,虽然分号不是必须加的,但是为了程序今后要压缩,如果不加分号,压缩之后将不能运行。
    (2)所有的符号,都是英语的。比如括号、引号、分号。
    (3)JavaScript的注释:
    单行://
    多行:/* */

    变量
    变量名有命名规范:只能由英语字母、数字、下划线、美元符号$构成,且不能以数字开头,并且不能是JavaScript保留字。

    变量的类型
    数值型:number
    字符串型:string

    变量格式转换
    parseInt():字符串转数字


    数据类型
    数据类型包括:基本数据类型和引用数据类型

    基本数据类型
    number、string、boolean、null、undefined
    引用数据类型
    Function、Object、Arrray、String、Date


    运算符
    赋值运算符、算数运算符、比较运算符、特殊情况(字符串拼接+字符串运算 )

    赋值运算符

     


    算数运算符

     


    比较运算符

     



    数据类型转换
    1.将数值类型转换成字符串类型
    2.将字符串类型转换成数值类型
    3.任何数据类型都可以转换为boolean类型

    流程控制
    if 、if-else、if-else if-else
    逻辑与&&、逻辑或||
    switch
    while循环
    do_while
    for循环
    双重fo循环


    常用内置对象
    数组Array

    数组的常用方法

     


    字符串String

     


    Date日期对象

     


    Math 内置对象

     


    函数
    就是将一些语句进行封装,然后通过调用的形式,执行这些语句。
    函数的作用:
    将大量重复的语句写在函数里,以后需要这些语句的时候,可以直接调用函数,避免重复劳动。
    简化编程,让编程模块化。

    定义
    function 函数名字(){}
    调用
    函数名字();

    伪数组 arguments

    DOM的事件操作
    事件 JS是以事件驱动为核心的一门语言。
    事件的三要素:事件源、事件、事件驱动程序。
    事件源:引发后续事件的html标签。
    事件:js已经定义好了(见下图)。
    事件驱动程序:对样式和html的操作。也就是DOM。

    常见事件

     


    获取事件源的方式
    var div1 = document.getElementById("box1"); // 方式一:通过id获取单个标签
    var arr1 = document.getElementsByTagName("div1"); // 方式二:通过标签名 获得 标签数组,所以有s
    var arr2 = document.getElementsByClassName("hehe"); // 方式三:通过类名 获得 标签数组,所以有s

    绑定事件的方式
    方式一:直接绑定匿名函数
    方式二:先单独定义函数,再绑定
    方式三:行内绑定

    事件驱动程序

    onload事件
    当页面加载(文本和图片)完毕的时候,触发onload事件。


    DOM介绍
    DOM:文档对象模型。DOM 为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构。目的其实就是为了能让js操作html元素而制定的一个规范。
    DOM就是由节点组成的。

    解析过程
    HTML加载完毕,渲染引擎会在内存中把HTML文档,生成一个DOM树,getElementById是获取内中DOM上的元素节点。然后操作的时候修改的是该元素的属性。

    DOM树(一切都是节点)

     


    在HTML当中,一切都是节点:(非常重要)
    元素节点:HMTL标签。
    文本节点:标签中的文字(比如标签之间的空格、换行)
    属性节点::标签的属性。
    整个html文档就是一个文档节点。所有的节点都是Object。

    DOM可以做什么
    找对象(元素节点)
    设置元素的属性值
    设置元素的样式
    动态创建和删除元素
    事件的触发响应:事件源、事件、事件的驱动程序

    DOM节点的获取
    var div1 = document.getElementById("box1"); // 方式一:通过id获取单个标签
    var arr1 = document.getElementsByTagName("div1"); // 方式二:通过标签名 获得 标签数组,所以有s
    var arr2 = document.getElementsByClassName("hehe"); // 方式三:通过类名 获得 标签数组,所以有s

    获取父节点
    获取单个的子节点
    获取所有的子节点

    nodeType
    nodeType == 1 表示的是元素节点(标签) 。记住:元素就是标签。
    nodeType == 2 表示是属性节点
    nodeType == 3 是文本节点


    DOM节点操作
    创建节点
    新的标签(元素节点) = document.createElement("标签名");

    插入节点
    方式一:
    父节点.appendChild(新的子节点);
    方式二:
    父节点.insertBefore(新的子节点,作为参考的子节点);

    删除节点
    父节点.removeChild(子节点);

    复制节点(克隆节点)
    要复制的节点.cloneNode(); // 括号里不带参数和带参数false,效果是一样的。
    要复制的节点.cloneNode(true);

    设置节点的属性

    获取节点的属性值
    方式1:
    元素节点.属性;
    元素节点[属性];
    方式2:(推荐)
    元素节点.getAttribute("属性名称");

    设置节点的属性值
    方式1举例:(设置节点的属性值)
    myNode.src = "images/2.jpg" //修改src的属性值
    myNode.className = "image2-box"; //修改class的name

    方式2:(推荐)
    元素节点.setAttribute(属性名, 新的属性值);

    删除节点的属性
    元素节点.removeAttribute(属性名);

    innerHTML、innerText 、value


    JS中的面向对象

    创建对象的几种常用方式
    1.使用Object或对象字面量创建对象
    2.工厂模式创建对象
    3.构造函数模式创建对象
    4.原型模式创建对象


    定时器
    1、setTimeout() 2、setInterval()
    setTimeOut() 只在指定时间后执行一次
    setInterval() 在指定时间为周期循环执行


    BOM
    BOM的常见内置方法和内置对象
    弹出系统对话框、打开窗口、关闭窗口

    location对象
    属性
    href:跳转
    hash 返回url中#后面的内容,包含#
    host 主机名,包括端口
    hostname 主机名
    pathname url中的路径部分
    protocol 协议 一般是http、https
    search 查询字符串

    对象的方法
    location.reload():重新加载

    navigator对象
    history对象


    client、offset、scroll系列
  • 相关阅读:
    eclipse 64和32位切换
    把web项目部署到阿里云linux服务器上
    CDN工作过程(第二种版本)
    CDN的基本工作过程
    第五课 JAVA反射获取对象属性和方法(通过配置文件)
    第五课 JAVA反射获取对象属性和方法
    第四课:通过配置文件获取对象(Spring框架中的IOC和DI的底层就是基于这样的机制)
    第三课:JAVA反射机制
    爬虫基本操作、requests和BeautifulSoup
    孤荷凌寒自学python第十八天python变量的作用范围
  • 原文地址:https://www.cnblogs.com/ngz311616/p/9477971.html
Copyright © 2020-2023  润新知