(For Final Exam)JavaScript:web前端部分知识总结

Uncategorized
7.1k words

HTML&CSS

  • web应用程序出现之前,客户机/服务器(C/S)是应用程序的主流框架

    • 客户机主要任务:

      • 1.建立和断开于服务器端的连接
      • 2.提交数据访问请求
      • 3.等待服务通告,接收请求结果或错误
      • 4.处理数据库访问结果或错误,包括重发请求和终止请求
      • 提供友好的应用程序用户界面
      • 数据输入/输出及验证
    • 服务器端任务:

      • 为多用户管理一个独立的数据库
      • 管理和处理接收到的数据访问请求,包括管理请求队列,管理缓存,响应服务,管理结果和通知服务的完成
      • 管理用户账号,控制数据库访问权限和其他安全性
      • 维护数据库,包括数据库备份和恢复等
      • 保证数据库数据的完整或为用户提供完整性控制手段
  • 如果用户请求执行的是ASP或者PHP脚本,则web服务器应用程序将解析并执行脚本,最后将结果转换成HTML格式,,并返回到客户端

  • br标签是HTML中的换行符,一般结束标签放在开始标签中,即<br/>

  • pre标签用于定义预格式化的文本,其中的文本会以等宽字体显示,并保留空格和换行符.<pre>标签通常可以用来显示源代码

  • li标签用于定义列表项目,有序列表ol,无序列表ul

  • 不对span应用样式,span元素中的文本与其他文本视觉上并无差异,可以用CSS定义span标签的显示样式以区别于其他文本

  • a:hover鼠标悬停

  • <img>标签的alt属性指定了替代文本,用于在图片无法显示或者用户禁用图像显示时,代替图像显示在浏览器中的内容

  • [attribute=value]用于选取带有指定属性和值的元素
    [attribute~=value]用于选取指定值中包含指定词汇的元素
    [attribute|=value]用于选取带有以指定值开头的属性值的元素,该值必须是整个单词
    [attribute^=value]匹配属性值以指定值开头的每个元素
    [attribute$=value]匹配属性值以指定结尾的每个元素
    [attribute*=value]匹配属性值中包含指定值的每个元素

  • Tim Berners-Lee 欧洲原子物理研究所 发明了WWW(World Wide Web)

  • element,element
    element>element
    element+element选取第一个指定的元素之后内部紧跟的元素

  • web1.0 web2.0 web3.0
    主要是只读 疯狂的读写 便携式和个人
    公司重点 社区焦点 个人焦点
    主页 博客/维基 直播/Waves
    拥有内容 分享内容 整合内容
    网络表单 网络应用程序 智能应用
    目录 标记 用户行为
    页面浏览量 每次点击费用 用户参与
    横幅广告 互动广告 行为广告
    大英百科全书在线 维基百科 语义网
    HTML/Portals XML/RSS RDF/RDFS/OWL
    数据不是焦点 许多人的数据是由一些中介控制 数据已个性化并且不使用中介
  • border-top-color:顶边框颜色
    border-bottom-color:底部边框颜色

  • Ray Tomlinson引入电子邮件功能,他选择的是@符号作为电子邮件地址的标记

  • HTTP - 超文本传输协议 HTML - 超文本标记语言

  • 表格标签:

    • <td rowspan=#>用于定义纵向通栏,即纵跨几行(row 是 行的意思)
    • <td colspan=#>用于定义横向通栏,即横跨几列
  • href属性的值是指定一个锚,可以在锚名前面加一个"#"

  • C/S架构:即Client/Server,客户端服务器端架构,服务器端有两种:

    • 一种是数据库服务器端,用户通过数据库连接访问服务器端的数据
    • 一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信
  • frame可以将浏览器窗口分成多个区域,每个区域可以单独显示一个html文件,各个区域也可以先关联地显示一个内容。

    • <noframe>:框架不能显示时地替换内容
    • <frameset>:标签的基本属性包括rowscols,框架可以嵌套
    • frame标签属性:
      • name:框架名
      • src:框架内容url
      • longdesc:框架的长篇描述
      • frameborder:框架边框
      • marginwidth:边距宽度
      • marginheight:边距高度
      • noresize:禁止用户调整框架尺寸
      • scrolling:规定框架中是否需要滚动条
  • <pre>:预格式化的文本。其中的文本以等宽字体显示,并保留空格和换行符,通常用来显示源码

  • CSS选择器:

    • element , element:同时选取多个元素
    • element element:选取元素内部的元素
    • element > element:选取带有指定父元素的元素
    • element + element:用于选取第一个指定的元素之后(不是内部)紧跟的元素
  • CSS的text-align属性:居中对齐是center

  • HTML文档中用link元素引用外部样式表,使用该元素的href属性指定被链接文档(样式表文件)的位置

  • jQuery是JavaScript的一个脚本库

  • C++/C是编译型语言,而Java,C#是解释型语言,js是解释型编程语言

  • 最早能够动态生成HTML页面的技术是CGI(Common Gateway Interface)

  • HTML标签不需要成对出现

  • <body style = "background-color:blue">是行内样式表

  • GET提交的参数中,如果有空格会转换成+

  • CSS属性:

    • width:元素的宽度
    • height:元素的告诉
    • margin:元素的外边距
    • padding:元素内边距
    • border:元素边框的样式

JavaScript

  • document.styleSheets[n]获取网页中第n+1个CSS样式表

  • indexOf()方法用于返回String对象内第一次出现子字符串的字符位置 stringObject.indexOf(searchvalue , fromindex)

    • searchvalue: 指定需检索的字符串值
    • fromindex: 指定在字符串中开始检索的位置
    • 取值范围0~stringObject.length - 1
  • JavaScript允许省略var , 直接对未声明的变量赋值(var a = 1a = 1)相同

  • Event对象的button属性仅用于onmousedown , onmouseup , onmousemove,对其他事件,不管鼠标状态如何,都返回0

  • form.submit()方法允许JavaScript启动表单发送

  • window.blur()方法把键盘焦点从顶层窗口移开

  • 如果局部变量和全局变量同名,则在定义局部变量的函数中,会屏蔽全局变量,优先使用局部变量

  • document对象的属性:

    • lastModified: 返回文档最后被修改的日期和时间
    • domain: 返回下载当前文档的服务器域名
    • referrer: 返回当前文档的url(不是URL)
    • cookie: 设置或者返回与当前文档有关的所有cookie
    • https://www.runoob.com/jsref/dom-obj-document.html
  • JS没有指针,只有引用

  • form标签常用属性:

    • name: 表单提交时的名称
    • action: 提交到的地址
    • method: 规定用于发送form-data的HTTP方法,提交方式:get和post
    • enctype: 规定在发送表单数据之前如何对其进行编码
    • application/x-www-form-urlencoded: 在发送前编码所有字符
    • text/plain: 空格转换为"+" 加号,但不对特殊字符编码
    • multipart/form-data: 使用包含文件上传控件的表单时,必须使用该值
  • textarea标签属性:

  • js事件传导阶段:

    • 事件捕捉(Capturing)
    • 目标阶段(target)
    • 冒泡阶段(Bubbing)
  • js函数不支持多态

  • Date类getMilliseconds方法用于返回Date对象中用本地时间表示的毫秒值,取值范围是0~999

  • Java语言在不同平台上运行时不需要重新编译

  • HTML<input>标签,size属性设置输入字段的宽度

  • 内置数学类MATH的方法 ceil():返回大于其数字参数的最小整数

  • 键盘事件:

    • onkeydown: 按键按下触发
    • onkeyup: 按键被松开触发
    • onkeyover: 按键关联到某元素时触发
  • 鼠标事件:

    • onmouseup: 鼠标按键被松开后执行
  • 没有createTree()这个document对象的方法

  • NextSibling返回某个元素之后紧跟的节点

  • 内置类String的方法: strike()用于显示加删除线的字符串

  • alert:alert(str),str指定消息对话框的内容

  • ===:恒等运算符:如果两者值相等,但是数据类型不同,返回false

  • arrayObject.join(separator),如果separator参数省略,则使用逗号作为分隔符

  • 事件监听器又称为事件句柄或者事件处理函数

    • addEventListener()参数:
      • target:触发事件的HTML DOM对象,例如document或者window
      • type:事件类型
      • listener:侦听到事件后,处理事件的函数,此函数必须接受Event对象作为其唯一的参数
      • useCapture:是否使用捕捉。此参数的作用是确定监听器是运行于捕获阶段,目标阶段还是冒泡阶段。一般为false
  • escape()函数用于对字符串进行编码,这样所有的计算机上都可以读取该字符串

  • 停止事件冒泡:

    • 将Event对象的cancelBubble属性设置为True,可以停止事件冒泡
    • 对于不支持cancelBubble的浏览器,可以调用Event对象的stopPropagation()方法来停止事件冒泡
  • DOM对象的属性:

    • innerHTML:获取或设置HTML元素的内容
    • attributes:表示节点的属性集合
    • childNodes:表示节点的孩子节点集合
    • nodeType:返回节点的类型,1表示此节点是标记(tag),2表示属性(attribute),3表示此文本项
    • nodeValue:返回文本项节点的值,如果不是文本想节点,返回null
    • data:返回一个字符串,表示文本项节点的值,如果是其他类型节点,返回undefined
    • NextSibling:表示DOM对象的下一个相邻的兄弟节点
  • document方法:

    • replaceChild(new_node,old_node):其中new_node指定新的节点,old_node指定被替换的节点(注意是replaceChild()不是replace())
  • 页面事件:

    • onload:页面或者一幅图像完成加载时触发
    • onerror:加载文档或图片错误时触发
    • onresize:窗口或框架被重新调整时触发
    • onbeforeunload:当前的页面内容将要被改变时触发
    • onunload:用户退出时触发
  • js中的遍历:

    • for(let i = 0;i < arr.length; ++i)

    • arr.forEach((v , i) => {/* … */})

    • for(let i in arr)

      • for(索引变量 in 数组名)
            {
                //通过数组名[索引变量]访问每个数组元素
            }
        
      • for(索引变量 in 数组名)

    • for(const v of arr)

  • js中有四个逻辑运算符:||,&&,!,??

    • ||:或
    • &&:与
    • !:非
    • ??:空值合并运算符
  • parseint():parseint(str , radix),str是待解析的字符串,参数radix可选,表示要解析的数字的基数,该值介于2~36之间

  • js获取表单对象的方法:

    • document.getElementById()
    • document.getElementsByName()
    • document.getElementsByTagName()
    • document.forms数组获取表单对象
  • BOM的window对象的方法:

    • setInterval():按照指定的周期(以毫秒计算)来调用函数或计算表达式
    • setTimeout():按指定的毫秒数后调用函数或计算表达式
  • DOM事件标准定义的事件流:

    • 捕获事件流
    • 冒泡事件流
  • >>>:无符号右移运算
    >>:右移运算符
    <<<:无符号左移运算符
    <<:左移运算符

  • javascript原始数据类型:Boolean,Number,String

jQuery&BootStrap

  • XMLHttpRequest Level 2 中增加了timeout属性,可以设置HTTP请求的时限,单位为毫秒

  • XMLHttpRequest对象的open()方法: 用于指定HTTP请求的参数,或者初始化XMLHttpRequest实例对象

  • setRequestHeader()方法:在调用open()方法之后,send()方法之前

  • Bootstrap 提供了一套响应式,移动设备有限的流式网格系统,随着屏幕或者视口尺寸的增加,系统会自动分为最多12

  • XMLHttpRequest对象的open方法的参数描述中,async:布尔值,指示这个调用使用异步还是同步,默认为true(即异步)

  • statusText:描述了http状态代码文本,仅当readystate值为3或者4才可以用。当readystate为其他值时试图存取statustext属性将引发一个异常

  • Ajax局部刷新

  • attr()方法,使用其可以访问匹配的html元素的指定属性,语法为attr(属性名),返回值是html元素的属性值:

    • attr(properties):以键值对的形式设置匹配元素的一组属性
    • attr(key , value):以键值对的形式设置匹配元素的指定属性,key指定属性名,value指定属性值
  • input选择器可以匹配表单中所有的input元素textarea元素select元素button元素

  • jQuery属性过滤器:

    • $([属性名^=值])过滤器匹配指定属性值以指定值开始的元素
  • jQuery内容过滤器:

    • :contains():匹配包含指定文本的元素
    • :empty():匹配不包含子元素或者文本为空的元素(不是:null()
    • :has():匹配包含指定子元素的元素
    • :parent():与empty()过滤器的作用正好相反,使用它可以匹配包含子元素或者文本不为空的元素
  • User-Agent:用户代理,使得服务器能够识别客户使用的操作系统及版本,cpu类型,浏览器及版本,浏览器渲染引擎,浏览器语言,浏览器插件等等

  • timeStamp:浏览器创建事件的时间与1970/1/1 8:00的时间差,单位为ms

  • jQuery属性过滤器:

    • $([属性名$=值])过滤器匹配指定属性值以指定值结尾的元素
  • jQuery表单选择器中没有:file选择器

  • jQuery表单过滤器:

    • enabled:匹配表单中所有启用的元素
    • disabled:匹配表单中所有禁用的元素
    • checked:匹配表单中所有被选中的元素(复选框或者单选按钮)
    • selected:匹配表单中所有被选中的option元素
  • preventDefault:如果调用了此方法,则事件的默认动作不会被触发

  • MIME:Multipurpose Internet Mail Extensions

    • innerHeight():获取元素的高度()
    • outerWidth():获取元素外部的宽度,包含pdding(内边距)和border(边框)
  • Bootstrap 分页:

    • Pagination是一种无序列表,Bootstrap像处理其他界面元素一样处理分页
    • .pagination:添加该class来在页面上显示分页
    • .disabled,active:自定义链接,通过使用.disabled来定义不可点击的链接,通过.active来指示当前的页面
    • .pagination-lg,.pagination-sm:使用这些class来获取不同大小的项
  • bind():$(selector).bind(event,data,function)

    • event:必需。规定添加到元素的一个或多个事件。由空格分隔多个事件,必须是有效的事件
    • data:可选。规定传递到函数的额外数据。
    • function:必需。规定当事件发生时运行的函数
  • onblur():元素失去焦点 / focus():获得焦点

  • jQuery基本过滤器:

    • :first:匹配找到的第一个元素
    • :last:匹配找到的最后一个元素
    • :not:可以去除与给定选择器相匹配的元素
    • :even:可以匹配所有索引值为偶数的元素,索引值从0开始
    • :odd:可以匹配所有索引值为奇数的元素
    • :eq(index):可以匹配索引值为index的元素
    • :gt(index):可以匹配索引值大于index的元素
    • :lt(index):可以匹配索引值小于index的元素
    • :header:可以选择所有h1,h2,h3类别的header标签
  • jQuery中与CSS类别有关的方法:

    • addClass():为匹配的HTML元素添加类别属性
    • hasClass():判断匹配的元素是否拥有指定值
    • removeClass():为匹配的元素删除指定的class属性
    • toggleClass():检查每个元素中指定的类,如果不存在则添加类,如果已经设置则将其删除,也就是执行切换操作
  • 定义响应处理函数,要将函数名赋值给XMLHttpRequest对象的onreadystatechange属性,响应处理函数没有参数,指定时也不带括号