JS入门

一. 总体介绍

   结合近半年来前端的项目的经验,这里梳理一下JS常用知识,方便自己日后温习查找,同时给广大JS入门者提供一些帮助,文章中如有错误,欢迎指出。这里从JS基础、Dom操作、JS进阶、四大家族、动画、面向对象入门等方面着重介绍一套JS相对完善的前端JS体系。

   

 

二. 详细介绍

(一). JS基础

  (1). 常用8个常用事件:onclick(单击)、ondbclick(双击)、onfocus(聚焦)、onblur(离开)、onchange(内容改变)、onmouseover(移入)、onmouseout(移出)、onkeyup(键盘按下)、window.onload(页面加载)、window.unload(页面关闭)。

     (2). 常用的输出:alert()、console.log()、console.warn()、console.error()、document.write()。

     (3). 常用的获取方法: 

     a.根据id获取:document.getElementById()

          b.根据类名获取:document.getElementsByClassName()

       c.根据标签获取:document.getElementsByTagName()

     (4). 属性的获取和设置:

         A:class内的属性的设置:js对象.style.className='';

             class内的属性的获取:结合currentStyle和getComputedStyle进行封装。

         B:标签内其他属性:

             获取节点属性:getAttribute(“属性名”)

             设置节点属性:setAttribute(“属性名”,“属性值”)

      删除节点属性:removeAttribute(“属性名”)

     (5). 常用数据类型

        字符型、布尔型、数值型;相互之间的转换方式、获取数据类型的方法

   (6). 数组

        A:数组声明的两种形式:常规new形式、类似于字面量的形式。

        B:数组增加的两种方式:push()和unshift()。

        C:数组删除的两种方式:pop()和shift()。

        D:数组的连接:concat()。

        E:数组和字符串的转换: join()和split()。

(二). Dom操作

 (1). 获取节点

   A:父节点:parentNode

        B: 首尾节点:firstElementChild(firstChild)和 lastElementChild(lastChild)

        C: 上一个和下一个兄弟节点:nextElementSibling(nextSibling)和 previousElementSibling(previousSibling)

        D:子节点: childNodes和children

   (2). 节点操作

       A: 创建:document.createElement(' ')

       B:插入:insertBefore()和appendChild()

       C:移出: removeChild()

       D:复制:clone()

(三). JS进阶  

 (1). 函数基础

   A: 函数变量提升:  在函数内声明与函数外相同名称的变量,内部变量级别将提升;函数表达式和函数的区别。

        B:常用函数:slice、toFixed、substring等

        C:日期函数

        D:定时器函数:setTimeout() 、setInterval()。

        E:运算符基础:短路表达式

   (2). 闭包

   A: 闭包的目的和原理

        B:闭包常用的两种写法

        C:闭包的参数传递

        D:闭包的应用:闭包节流

  (3). 冒泡

   A: 冒泡的原理

        B:阻止冒泡的js的兼容写法

        C:阻止冒泡的JQuery兼容写法以及JQuery中一些方法中可以通过return false来阻止冒泡

        D:阻止冒泡和阻止默认行为的区别

(四). 四大家族

  (1). offset家族 

   A: 自身宽高:offsetWidth和offsetHeight (包含padding和border)

        B:距有定位的长辈的距离: offsetLeft和offsetTop

        C:距有定位的长辈中最近的元素:offsetParent

        D:offsetXX和style.XX的区别

  (2). scroll家族  

   A: scrollTop和scrollLeft的兼容性写法

        B:scrollTo(x,y)的用法

        C:与JQuery方式进行对比

        D:案例回到屏幕顶部

  (3). event家族

   A:event.pageX 、event.clientX 、eventscreenX

        B:盒子中某点位置的计算公式

  (4). client家族

   A:获取clientHeight或clientWidth的兼容性写法

        B:与scrollHeight和offsetHeight的区别

(五). 动画 

  (1). 匀速动画

   封装公式

  (2). 缓动动画

      封装各种情况,与JQuery对比

(六). 面向对象入门

  简单介绍面向对象的基础入门,后在面向对象章节,详细介绍。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/438452.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

联想记忆计算机网络,什么是双向联想记忆神经网络

联想记忆神经网络是模拟人脑, 把一些样本模式存储在神经网络的权值中, 通过大规模的并行计算, 使不完整的、受到噪声“污染”的畸变模式在网络中恢复到原有的模式本身。大脑是人体最为复杂的信息处理系统。联想记忆(AssociativeMemory, AM) 是人脑的重要认知功能之一。例如, 听…

第二节 DOM-Document对象

一. 整体介绍 这里介绍DOM对象中的Document对象。 何为Document对象?每个载入浏览器的HTML文档都会成为Document对象,Document对象可以帮助我们对所有的HTML文档进行访问。 任何一个对象都会有属性和方法,当然Document对象也不例外&#xff0…

计算机专业的情书,【实用】大学各专业表白情书,你能看懂几个

原标题:【实用】大学各专业表白情书,你能看懂几个大学各专业表白情书的正确打开方式每每看到朋友圈秀恩爱时就会用知识摆脱烦恼刷刷微博浏览网页学学专业技能......但是!居然连专业都不放过表白还那么高调来感受感受吧……音乐专业每次看着你…

第三节 DOM-Element对象

一. 整体介绍 这里介绍DOM对象中Element对象。 那么何为Element对象呢?Element对象就是HTML元素,Element对象包括:元素节点、文本节点、属性节点。 下面利用一张图来总体概括一下Element对象包含的知识点。 二. 知识梳理 一张图胜似千言万语…

w8计算机配置要求,win8配置要求 详细介绍

随着win8系统的不断完善,现在已经越来越多用户投身到win8的行列之中,越来越多的人使用win8也代表着出现了新的问题,很多用户考虑到win系统对电脑的硬件要求有所不同,所以有些电脑无法完美的运行win8系统,究竟要怎么样才…

C#多线程编程系列(一)- 简介

目录 系列大纲一、前言二、目录结构四、章节结构五、相关链接系列大纲# 目前只整理到第二章,线程同步,笔者后面会慢慢更新,争取能把这本书中精华的知识都分享出来。C#多线程编程系列(一)- 简介C#多线程编程系列&…

计算机论文答辩注意哪些问题,计算机专业论文答辩(准备和注意事项)

随着社会的不断发展,计算机的应用在中国越来越普遍,在互联网、通信、多媒体等领域都有应用,对于计算专业的同学,毕业时,除了想了解毕业论文如何写作,还有就是论文的答辩准备,下面我们就为大家重…

C#多线程编程系列(二)- 线程基础

目录 C#多线程编程系列(二)- 线程基础 1.1 简介1.2 创建线程1.3 暂停线程1.4 线程等待1.5 终止线程1.6 检测线程状态1.7 线程优先级1.8 前台线程和后台线程1.9 向线程传递参数1.10 C# Lock关键字的使用1.11 使用Monitor类锁定资源1.12 多线程中处理异常…

C#多线程编程系列(三)- 线程同步

目录 1.1 简介1.2 执行基本原子操作1.3 使用Mutex类1.4 使用SemaphoreSlim类1.5 使用AutoResetEvent类1.6 使用ManualResetEventSlim类1.7 使用CountDownEvent类1.8 使用Barrier类1.9 使用ReaderWriterLockSlim类1.10 使用SpinWait类参考书籍笔者水平有限,如果错误…

C#多线程编程系列(四)- 使用线程池

目录 1.1 简介1.2 在线程池中调用委托1.3 向线程池中放入异步操作1.4 线程池与并行度1.5 实现一个取消选项1.6 在线程池中使用等待事件处理器及超时1.7 使用计时器1.8 使用BackgroundWorker组件参考书籍笔者水平有限,如果错误欢迎各位批评指正!1.1 简介…

C#线程模型脉络

今天在看同事新买到的《C#本质论 Edition 4》的时候,对比下以前Edtion3的新特性时,针对Async/Await关键字时发现对一些线程方面的定义还理解的不是很透彻,脉络还不是很清晰,这样有了本文,希望对有同样困惑的朋友有些帮…

“菜”鸟理解.NET Framework(CLI,CLS,CTS,CLR,FCL,BCL)

既然要学.NET,就要先认识认识她,我不喜欢大段大段文字的东西,自己通过理解,画个图,来看看.NET的沉鱼落雁,闭月羞花之容。 最下层蓝色部分是.NET Framework的基础,也是所有应用软件的基础。.NET …

QQ炫舞手游显示进入服务器失败6,qq炫舞手游进不去怎么办 游戏进不去方法详解[多图]...

qq炫舞手游是新出的游戏,在近期非常的火爆,不过有不少的玩家都有进不了游戏的情况,下面安族小编给大家介绍一下游戏进不去方法详解。qq炫舞手游玩不了解决方法1.第一种方式就是内测还没有开启咯,所以玩家一般都是下载不到包的&…

那些年我们一起追逐的多线程(Thread、ThreadPool、委托异步调用、Task/TaskFactory、Parallerl、async和await)

一. 背景 在刚接触开发的头几年里,说实话,根本不考虑多线程的这个问题,貌似那时候脑子里也有没有多线程的这个概念,所有的业务都是一个线程来处理,不考虑性能问题,当然也没有考虑多线程操作一条记录存在的并…

asp.net mvc webform和razor的page基类区别

接触过asp.net mvc的都知道&#xff0c;在传统的webform的模式下&#xff0c;page页面的基类是这样声明的&#xff1a; <% Page Language"C#" MasterPageFile"~/Views/Shared/Site.Master" Inherits"ViewPage" %> 如果是partial view的话…

frameset ajax,js控制frameSet示例

js控制frameSet示例1&#xff1a;js修改frameset的cols属性来达到修改各个页面所占的宽高&#xff0c;例如隐藏当前frame页。复制代码 代码如下:window.parent.document.getElementsByTagName("frameset")[0].cols"0,*";2&#xff1a;js调用其他frame页面的…

人生的抉择—aspx、ashx、asmx文件处理请求效率比较

总结&#xff1a; ashx&#xff1a;只是实现IHttpHandler接口 aspx&#xff1a;public class Page : TemplateControl, IHttpHandler 而TemplateControl是&#xff1a; abstract class TemplateControl : Control, INamingContainer, IFilterResolutionService 所以aspx是重型…

ajax jsp模糊查询源码,Ajax动态执行模糊查询功能

Ajax动态执行模糊查询功能 内容精选换一换Profiling采集的数据较多&#xff0c;同时解析后展示的性能指标项也比较多&#xff0c;为方便用户快捷查找到具体性能指标的含义&#xff0c;提供命令行查询功能&#xff1a;不包含metric_name参数时&#xff0c;打印hiprof.sh脚本帮助…

一般处理程序(ashx)和页面处理程序(aspx)的区别

客官请看图 图中的Httphandler就是处理程序。 两者的共同点 如果把aspx处理程序和ashx处理程序放到上图中&#xff0c;他们是处在相同的位置的&#xff0c; 他们都实现了IHttphandler接口。实现了IHttphandler才具备处理请求的能力 两者的不同点 微软对aspx下足了功夫&#…

怎么在微云服务器找一个文件,微云文件在哪里打开_怎么快速找到微云文件

微云文件在哪里打开&#xff0c;这个问题困扰了许多的朋友&#xff0c;今天小编带着教程走向大家&#xff0c;我们可以使用微云可以快速连接和预览在线文档&#xff1b;同时加载和卸载多终端、手机、计算机、同步PAD数据传输&#xff0c;无需数据线。对于微云客户端&#xff0c…