1.闭包

// 函数的嵌套定义,定义在内部的函数都称之为 闭包

// 1.一个函数要使用另一个函数的局部变量

// 2.闭包会持久化包裹自身的函数的局部变量

// 3.解决循环绑定

function outer(){

  var num = 10;

  function inner(){ // 闭包

    // 1.在inner函数中,使用了outer的局部变量num

    return num;

  }

  return inner;

 }

var innerFn = outer();

// 2.借助闭包,将局部变量num的生命周期提示了

var num = innerFn();

console.log(num);

2.面向对象js

// 1.单一对象

var obj = {

  // 属性

  name:'zero';

  // 方法

  teach:function(){

    console.log("教学");  

  }

};

obj.name | obj.teach()

// 2.构造函数

function Person(name){ // 类似于python中的类一样来使用

  // this代表Person构造函数实例化出的所有具体对象中的某一个

  this.name = name;

  this.teach = function(){

    console.log(this.name+"正在教育");

  }

}

//  ①通过构造函数实例化出具体对象

//  ②通过对象,语法调用的属性与方法

var p1 = new Person("张三");

p1.name // 张三,this指向p1对象

var p2 = new Person("李四");

p2.teache  // 李四正在教学,this指向p2对象

// 3.ES6类语法

class Student{

  // 需要构造器(构造函数)来完成对象声明与初始化

  constructor(name){

    // 属性在构造器中声明完成初始化

    this.name = name;

  }

  // 类方法

  static fn(){

    console.log("我是类方法")
  }

}

// 类中的普通方法由类的具体实例化对象来调用

// 类中的类方法由类直接调用(这类型的方法大多是功能性方法,不需要对象的存在)

3.js选择器

直接通过id名(不严谨,也不推荐使用)

getElement系列(最严谨)

// id获取:
// getElementById('id名')
// 只能由document来调用 // class获取
// getElementByClassName('class名')
// 可以由document以及所属父级调用 // tag获取
// getElementsByTagName('标签名')
// 可以由document以及所属父级调用 querySelector
// 获取第一个满足要求的目标
//querySelector() // 获取所有满足要求的目标
// querySelectorAll() // 1.参数:就采用的是css选择器语法
// 2.可以由document及父级来调用
// 3.对id检索不严谨

4.事件初识

// js事件: 页面标签在满足某种条件下可以完成指定功能的这种功能,称之为事件
// 某种条件:如鼠标点击标签:点击事件 | 鼠标双击标签:双击事件 | 键盘按下:
键盘按下事件
// 指定功能:就是开发者根据实际需求完整相应的功能实现 // 钩子函数:就是满足某种条件被系统回调的函数(完成指定功能)
// 点击事件:明确激活钩子的条件 = 机会钩子后该处理什么逻辑,完成指定功能(函数) // 获取页面标签是前提
var div = documet.querySelector('.div')
// 钩子条件:双击 = 指定功能(自身背景颜色变红)
div.ondblclick = function(){
this.sytle.backgroundColor = "red";
}

5.js操作页面内容

文本内容

// box.innerText
// 可以设值,也可以取值

标签内容

// box.innerHTML
// 可以设值,也可以取值,能解析html语法代码 // box.outerHTML
// 获取包含自身标签信息的所有子内容信息

样式

// box.style.样式名 ==》可以设值,可以取值,但操作的只能是行间式
// getComputedStyle(box,null). 样式名 ==》只能取值,不能设值,能获取所有方式设值的值(行间式 与 计算后样式) // 注:获取计算后样式,需要关注值得格式

第六十五天 js操作的更多相关文章

  1. python第六十五天--python操作mysql

    pymysql模块对mysql进行 import pymysql # 创建连接 conn = pymysql.connect(host='127.0.0.1', port=3306, user='ro ...

  2. Gradle 1.12用户指南翻译——第六十五章. Maven 发布(新)

    其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上的地址:https://gith ...

  3. 孤荷凌寒自学python第六十五天学习mongoDB的基本操作并进行简单封装4

    孤荷凌寒自学python第六十五天学习mongoDB的基本操作并进行简单封装4 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十一天. 今天继续学习mongoDB的简单操作 ...

  4. 《手把手教你》系列技巧篇(六十五)-java+ selenium自动化测试 - cookie -下篇(详细教程)

    1.简介 今天这一篇,宏哥主要讲解:利用WebDriver 提供可以读取.添加和删除cookie 信息的相关操作方法.验证浏览器中是否存在某个cookie.原因是:因为基于真实的cookie 的测试是 ...

  5. Bootstrap入门(二十五)JS插件2:过渡效果

    Bootstrap入门(二十五)JS插件2:过渡效果 对于简单的过渡效果,只需将 transition.js 和其它 JS 文件一起引入即可.如果你使用的是编译(或压缩)版的bootstrap.js  ...

  6. 第三百六十五节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的基本查询

    第三百六十五节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的基本查询 1.elasticsearch(搜索引擎)的查询 elasticsearch是功能 ...

  7. “全栈2019”Java第六十五章:接口与默认方法详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  8. OpenCV开发笔记(六十五):红胖子8分钟带你深入了解ORB特征点(图文并茂+浅显易懂+程序源码)

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  9. 第六十四天 JS基础操作

    一.分支结构 1.if语句 if基础语句 if(条件表达式){ 代码块: } // 当条件表达式结果为true,会执行代码块:反之不执行 // 条件表达式可以为普通表达式 // 0.undefined ...

随机推荐

  1. 最小化的 Google Analytics 代码

    一个简单的代码段,用于跟踪网站上的网页浏览量,而无需添加外部库. 也适用于使用react和vue.js等单页应用程序. Before Google Tag Manager + Analytics =  ...

  2. DIV中文字换行显示

    居然第一次遇到这种问题,还想了半天到底是怎么回事,为什么明明div设置宽度了,里面的文字超过宽度后居然不换行. (1)word-break属性,可以让浏览器实现在任意位置换行. normal:使用浏览 ...

  3. Android WebView的HTML中的select标签不起作用

    Android WebView的HTML中的select标签不起作用 经过查询资料,了解到android对html里的select标签是弹出一个原生的选择器. 问题: Webview中的select没 ...

  4. Android EditText常用属性

    一.EditText介绍 ①EditText是一个输入框,在Android开发中是常用的控件.也是获取用户数据的一种方式. ②EditText是TextView的子类,它继承了TextView的所有属 ...

  5. 如何给win7自带的截图工具设置快捷键

    win7自带的截图工具很好,很强大,比从网上下载的截图工具好用多了,很少会出现问题.但是它能不能像QQ截图工具一样可以使用快捷键呢?今天小编和大家分享下心得,希望能够给你的工作带来快捷. 工具/原料 ...

  6. EFCore使用JSON_VALUE查询json对象的值

    EFCore使用JSON_VALUE查询json对象的值 Intro SqlServer 从2016开始支持 JSON 操作,可以使用 JSON_VALUE 查询 JSON 对象的某个属性值,更多介绍 ...

  7. CentOS 7下使用Gitolite搭建Git私服

    1. 搭建环境 CentOS7, git version 1.8.3.1 2. 安装依赖包 yum install curl-devel expat-devel gettext-devel opens ...

  8. php去掉字符串的最后一个字符

    php去掉字符串的最后一个字符 //例如 $str = "12,34,56,"; $newstr = substr($str,0,strlen($str)-1); //从第一位开始 ...

  9. 批处理基础知识-IF

    本文主要介绍批处理IF命令的使用. IF命令格式: if /i string=string command 释义:判断2个字符串是否相等,但不区分大小写. 例: 代码: @echo off if /i ...

  10. Gitlab利用Webhook实现Push代码后的jenkins自动构建

    之前部署了Gitlab的代码托管平台和Jenkins的代码发布平台.通常是开发后的代码先推到Gitlab上管理,然后在Jenkins里通过脚本构建代码发布.这种方式每次在发版的时候,需要人工去执行je ...