知识点导图

1:基础知识

(1)JavaScript是脚本语言,弱类型,执行非常非常快

(2)它与java有什么关系?没有任何关系

(3)js能做什么事情?1控制浏览器 BOM ,2控制元素 DOM

(4)js不能做什么事情?不能做文件读取,创建及删除,不能直接访问数据库

(5)node.js - 开发平台,通过这个平台可以开发常规的web服务端,是一块非常轻量级的运行环境

Jquery.js - 前端框架

(6)JS是面向过程的语言,JS有面向对象,但是不是纯粹的面向对象语言

2:常用对话框

(1)alert(""):警告对话框,作用是弹出一个警告对话框

(2)confirm(""):确定对话框,弹出一个带确定和取消按钮的对话框——确定返回true,取消返回false

(3)primpt("要显示的文字"):可以允许用户输入内容的对话框

3:数据类型

(1)基本数据类型:字符串、小数、整数、时间日期、布尔型等

(2)变量只有一种类型:

通用类型var,可以随便存储其它类型的值,可以直接使用,不用定义。但习惯上定义。

定义变量: var a;    //所有变量定义都用var定义,var是通用的可变类型。

var s = "3.14";

(3)类型转换

分为自动转换和强制转换,一般用强制转换。

其他类型转换为整数:parseInt();

其他类型转换为小数:parseFloat();

判断数字是否合法:isNaN()

4:运算符(与C#一样)

    数学运算符:+    -    *    /    %    ++    --;

关系运算符:==    !=    >=    <=    >    <;

逻辑运算符:&&    ||    !;

其他运算符:+=    -=    *=    /=    %=    ?:;

5:语句

    一般分为顺序、分支和循环语句。

    (1)分支语句:  if{}else{}   if{}else{}

(2)循环for语句for(初始条件:循环条件;状态改变){循环体}

(3)问题类型:穷举,迭代

(4)关键词:break、continue

(5)如果输出某一参数的值:输出的值是“+a+”和“+b

6:数组

     数组的定义:new Array();    //它的长度是动态变化的,里面可以放任意类型的元素。

数组元素的赋值:a[0]=123; a[1]="hello";  //元素中的索引从0开始。

数组的取值:a[i];

数组属性:a.length;    //数组元素的个数,长度。没有count()

方法:a.sort(); //数组排序,按照每一个元素的第一个字符进行排序。

a.reverse();  //翻转数组。

7:函数

    函数的四要素:名称、输入、返回值、加工。

定义函数:function add(形参){函数体}     //函数名为add,输入为参数的形式,返回值可以是var类型,也可以return一个返回值。

匿名函数:function(){函数体}

函数必须经过调用才能执行。函数的调用:add(实参)

BOM(主要记忆)

window.open("打开的地址","打开的位置")

window.opener:打开此页面的上一个页面对象

window.close():关闭当前页面

window.scrollTo(x,y)滚动页面至哪里,y代表纵向滚动;

window.history.back();页面进行后退;

location地址栏:window.location.href="http://www.baidu.com";修改页面地址,会跳转页面(超链接)

DOM(主要记忆)

(1)找到元素

按照ID来找 var aa = document.getElementById("id");找到的肯定是一个对象

按照Class来找 var aa = document.getElementsByClassName("class");找到的肯定是一个数组

按照Name来找 var aa = document.getElementsByName("name");找到的肯定是一个数组

按照元素名来找 var aa = document.getElementsByTagName("div");找到的肯定是一个数组

(2)操作元素内容

innerHtml - 会将元素标记代码渲染后的效果显示出来(超链接形式显示):会将所有的内容和代码一并取出来

innerText - 不会让内容进行任何渲染,写的什么直接就输出什么(把超链接代码显示出来了):取值时它只会把能看到的文字信息取出来,不会取到HTML代码

value - 12个表单元素御用,别的元素没有权利使用它们并不是value就能解决全部表单元素的内容操作,部分元素还需要上面两种的配合。如:option,radio

(3)操作元素属性

1、添加属性

      oTxt1.setAttribute("readonly", "readonly");

2、修改属性
     oTxt1.setAttribute("Class", "ttt");


( 添加、修改)如果没有此属性会添加进去,相反,会修改此属性的值

3、查询属性
      this.getAttribute("Class");

获取属性的值

4、删除属性
      this.removeAttribute("Class");

移除一个属性

(4)操作元素样式(所有的样式操作都是在元素代码内部进行添加及更改,优先级最高)

1、 添加样式

this.style.width="100px";
            this.style.boxShadow = "0px 0px 15px black";

2、修改样式
           this.style.width="100px";
           this.style.boxShadow = "0px 0px 15px black";

3、查询当前样式
           this.style.xxx - 只能获取写在元素代码内部的样式值

获取即使样式:
                   this.offsetWidth
                   this.offsetHeight
                   this.offsetTop
                   this.offsetLeft

4、删除样式

(5)操作元素

1、查找兄弟级的上一个和下一个

      this.nextSibling
      this.previousSibling

2、查找父级元素
     this.parentNode

3、查找全部子级元素
     this.childNodes

4、创建新元素
     var oDiv = document.createElement("div");

document.getElementById("boss").appendChild(oDiv);
     ---------------------------------------------------

var oDiv = "<div class='div1'></div>";

document.getElementById("boss").innerHTML += oDiv;
    ----------------------------------------------------

5、移除元素
     this.remove();

JavaScricp(总回顾)的更多相关文章

  1. 老男孩python第六期

    01 python s6 day7 上节回顾02 python s6 day7 SNMP使用03 python s6 day7 大型监控架构讲解04 python s6 day7 Redis使用05 ...

  2. 大数据高并发系统架构实战方案(LVS负载均衡、Nginx、共享存储、海量数据、队列缓存)

    课程简介: 随着互联网的发展,高并发.大数据量的网站要求越来越高.而这些高要求都是基础的技术和细节组合而成的.本课程就从实际案例出发给大家原景重现高并发架构常用技术点及详细演练. 通过该课程的学习,普 ...

  3. 史上最全Redis面试题及答案。

    花了大量时间整理了这套Redis面试题 首发50题,绝无仅有,从入门到精通 从基础,高级知识点,再到集群,运维,方案- 弄明白了这些题可以说可以成为面霸了 面试官都得折服,Redis学得怎么样,都来检 ...

  4. 「MoreThanJava」当大学选择了计算机之后应该知道的

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  5. 「MoreThanJava」计算机发展史—从织布机到IBM

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  6. 「MoreThanJava」计算机系统概述

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  7. 「MoreThanJava」一文了解二进制和CPU工作原理

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  8. 「MoreThanJava」机器指令到汇编再到高级编程语言

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  9. 「MoreThanJava」Java发展史及起航新世界

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

随机推荐

  1. SpringBoot系统列 5 - 接口版本控制、SpringBoot FreeMarker模板引擎

    接着上篇博客的代码继续写 1.接口版本控制 一个系统上线后会不断迭代更新,需求也会不断变化,有可能接口的参数也会发生变化,如果在原有的参数上直接修改,可能会影响线上系统的正常运行,这时我们就需要设置不 ...

  2. 【2019年04月03日】A股最便宜的股票

    太钢不锈(SZ000825) - 当前便宜指数:161.66 - 滚动扣非市盈率PE:4.62 - 滚动市净率PB:1.03 - 动态年化股息收益率:4.53% - 太钢不锈(SZ000825)的历史 ...

  3. unity 5.3 以后加载场景

    记录下官方建议的加载场景的方法: StartCoroutine(LoadYourAsyncScene()); IEnumerator LoadYourAsyncScene() { // The App ...

  4. poj3278_kuagnbin带你飞专题一

    Catch That Cow Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 88247   Accepted: 27640 ...

  5. 剑指offer——python【第43题】左旋转字符串

    题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果.对于一个给定的字符序列S,请你把其循环左移K位后的序列输出.例如,字符序列S=”abc ...

  6. jQuery实现限制input框 textarea文本框输入字符数量的方法

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  7. CodeFirst简单演示的步骤

    CodeFirst简单演示的步骤 创建实体类[Student] public class Student { public long Id { get; set; } public string Na ...

  8. redis,缓存雪崩,粗粒度锁,缓存一致性

    1, redis单线程为什么快 io多路复用技术 单线程避免多线程的频繁切换问题 memcache缺点 kv形式数据 没有持久化mongodb 海量数据的访问效率 mr的计算模型文档就是类似json的 ...

  9. [04-01]css组合选择器

    /* 私人笔记 */   组合选择器:把基本选择器通过特殊符号串在一起,可以带来一些特殊的意义: 1.源码 <!DOCTYPE html> <html lang="zh&q ...

  10. centos6 安装python2.7 并做软件兼容处理 及 MySQLdb模块安装

    相关软件准备 https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz https://pypi.org/project/setuptool ...