1、什么是Javascrpt?

轻量级 、编程语言

HTML+css -->设计

参数的默认值设置

函数的闭包:

浏览器加载整个页面的过程

浏览器:多线程

1、js引擎

2、UI渲染

3、事件线程

4、发起请求的线程

5、定时器的线程

js-->》单线程 --》编程方便

银行 一个柜台   js相关的事情

排队

js--》 单线程

同步任务

异步任务

js

第一阶段:载入阶段    默认 :同步

第二阶段:事件阶段  异步

浏览器的三大弹窗:

//浏览器的弹窗
//3种弹窗
//alert(只有确定)
//confirm返回布尔值(确定、取消)
//prompt弹窗,有输入框
var bfv=prompt('请输入')
console.log(bfv)

间隔函数(计时器)

var num=0
function add(){
console.log(++num)
}
var sil=setInterval(add,1000) //每隔1秒执行一次
function end(){
clearInterval(sil)
}
setTimeout(end,10000)//执行10秒以后就会清除

事件的类型:

事件源:事件产生的地方

事件的类型:点击  键盘

事件对象:记录好  信息

事件的处理程序:函数

注册:把以后会发生的事情,先提前报备一下

例如:没钱了就会给家里打电话   你   肯定打电话

没钱了 + 打电话 -》 你

事件的类型 + 函数 -》元素

两种方式:

1、HTML的属性:

属性名:on+事件的名字    onclick   click就是点击事件类型

属性值:方法

直接在html设定

通过js元素对象来设定

直接在html设定方法名,然后会直接调用

<div id="div1" onclick="add()">hehe</div>

<script>
var num=0
function add(){//每点击一次就加1
console.log(++num)
}
</script>

通过js元素对象来设定

<body>
<div id="div1">hehe
<img id="img1" src="img/a1.jpg" />
<h6>hh</h6>
</div>
<script>
var num=0
function add(){
console.log(++num)
}
var div1=document.querySelector('#div1')
div1.onclick=add

div1.onclick=null  //清除这个点击事件
</script>
</body>

通过系统调用  提供的调用方法

div1.addEventListener(事件类型click,函数add,事件的处理方式)//事件的处理方式有捕获和冒泡,默认是冒泡,其实他是有个布尔值,默认是false(冒泡)

div1.addEventListener('click',add)//事件的处理方式有捕获和冒泡   注意:IE9以后才有这个.addEventListener监听方法,而IE9之前是attachEvent(),其实功能是类似的

通过这种监听事件可以将同一事件绑定多个方法

div1.removeEventListener("click",add) //取消这个监听事件

js引入及阻塞加载

js:嵌套代码、引入外部链接

获取系统时间:timem=new Date()

js是阻塞式的加载

console.log("start")
working(10*1000)
console.log('end')
function working(time){

var nowTime=Date.now()//毫秒
var exitTime=nowTime+time
while(nowTime<exitTime){
//干活
nowTime=Data.now()
}
}

javascrpit的理解的更多相关文章

  1. 理解CSS视觉格式化

    前面的话   CSS视觉格式化这个词可能比较陌生,但说起盒模型可能就恍然大悟了.实际上,盒模型只是CSS视觉格式化的一部分.视觉格式化分为块级和行内两种处理方式.理解视觉格式化,可以确定得到的效果是应 ...

  2. 彻底理解AC多模式匹配算法

    (本文尤其适合遍览网上的讲解而仍百思不得姐的同学) 一.原理 AC自动机首先将模式组记录为Trie字典树的形式,以节点表示不同状态,边上标以字母表中的字符,表示状态的转移.根节点状态记为0状态,表示起 ...

  3. 理解加密算法(三)——创建CA机构,签发证书并开始TLS通信

    接理解加密算法(一)--加密算法分类.理解加密算法(二)--TLS/SSL 1 不安全的TCP通信 普通的TCP通信数据是明文传输的,所以存在数据泄露和被篡改的风险,我们可以写一段测试代码试验一下. ...

  4. node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理

    一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...

  5. 如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念

    一.前言     DDD(领域驱动设计)的一些介绍网上资料很多,这里就不继续描述了.自己使用领域驱动设计摸滚打爬也有2年多的时间,出于对知识的总结和分享,也是对自我理解的一个公开检验,介于博客园这个平 ...

  6. 学习AOP之透过Spring的Ioc理解Advisor

    花了几天时间来学习Spring,突然明白一个问题,就是看书不能让人理解Spring,一方面要结合使用场景,另一方面要阅读源代码,这种方式理解起来事半功倍.那看书有什么用呢?主要还是扩展视野,毕竟书是别 ...

  7. ThreadLocal简单理解

    在java开源项目的代码中看到一个类里ThreadLocal的属性: private static ThreadLocal<Boolean> clientMode = new Thread ...

  8. JS核心系列:理解 new 的运行机制

    和其他高级语言一样 javascript 中也有 new 运算符,我们知道 new 运算符是用来实例化一个类,从而在内存中分配一个实例对象. 但在 javascript 中,万物皆对象,为什么还要通过 ...

  9. 深入理解JS 执行细节

    javascript从定义到执行,JS引擎在实现层做了很多初始化工作,因此在学习JS引擎工作机制之前,我们需要引入几个相关的概念:执行环境栈.全局对象.执行环境.变量对象.活动对象.作用域和作用域链等 ...

随机推荐

  1. 使用ES6的reduce函数,根据key去重

    最近很着迷于ES6的函数,让代码变得更优雅.ES6里的reduce函数,平时用的不是特别多,真正用起来发现还是挺好用的. 想要实现的效果为: 原数组: let rawArr = [{id:'123'} ...

  2. laravel注册行为的方法和逻辑

    public function register() { //验证: $this->validate(\request(), [ 'name' => 'required|min:3|uni ...

  3. Fiddler系列教程1:初识Http协议抓包工具

    1. Fiddler简介 Fiddler是用一款使用C#编写的http协议调试代理工具.它支持众多的http调试任务,能够记录并检查所有你的电脑和互联网之间的http通讯,可以设置断点,查看所有的“进 ...

  4. bzoj2301

    题解: 莫比乌斯反演 再加上一个分块 然后和上一题差不多了 代码: #include<cstdio> #include<cmath> #include<algorithm ...

  5. 枚举类返回Map键值对,绑定到下拉框

    有时候,页面的下拉框要显示键值对,但是不想从数据库取,此时我们可以写一个枚举类, Java后台代码 1.枚举类 import java.util.HashMap; import java.util.M ...

  6. 解决WDCP3环境gbk网站编码程序乱码问题

    因为默认WDCP V3版本环境编码格式是UTF-8版本,如果我们程序采用的是GBK编码肯定都会有乱码问题. 我们到WDCP后台,"网站管理"-"PHP设置",看 ...

  7. DevExpress v18.1新版亮点——Analytics Dashboard篇(一)

    用户界面套包DevExpress v18.1日前正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExpress Analytics Dashboard v18.1 的新功能,快 ...

  8. 关于Java的特点之封装

    抽象 1.简单理解 我们在前面去定义一个类时候,实际上就是把一类事物的共有的属性和行为提取出来,形成一个物理模型(模版).这种研究问题的方法称为抽象. 封装--什么是封装 封装就是把抽象出来的数据和对 ...

  9. 前端小白凭什么杀进 BAT?

    七天国庆黄金周转眼即逝,退散的除了出游的热情,还有一波求职热潮...IT 行业的技术者,时常被称为“码农.IT民工” 虽然行业内巨大的人才需求和相对容易得到的高薪,在源源不断的吸引各路人马加入,但它依 ...

  10. 百杂讲堂之为什么32位系统只能操作4g内存

    百杂讲堂之为什么32位系统只能操作4g内存 计算机内存中很多的单元,每一个单元就是一个字节,一个字节有8位.每一个单元有两种状态:0和1. 所以 两个单元就有4个组合: 3个单元就有8个组合: 依次类 ...