知识点总结

  • getElementsByTagName(动态方法) 与 getElementById(静态方法) 的区别
  1、ID前面只能跟document,不能跟其他元素,比如:document.getElementById('list')
TagName前面可以跟其他元素也可以跟document,比如:oUl.getElementsByTagName('li')
2、ID只能找到一个元素
TagName找到一堆元素的集合,因此在用的时候必须要加上:[]
3、ID如果不存在,用getElementById查找,就找不到
TagName如果不存在,在后面动态添加了,再用getElementsByTagName查找,这时就可以找到。
  • document.body、document.title
  document.title = 123;
document.body.innerHTML = 'abc';
  • for循环
例子一:
for (var i=0;i<aLi.length;i++) {} 每执行一次for循环,需要去计算一下aLi.length,因此出于性能方面的考虑,将代码更改成如下:
var len = aLi.length
for (var i=0;i<len;i++) {} 例子二:
为body添加3000个按钮
for (var i=0;i<3000;i++) {
document.body.innerHTML += '<input type="button" value="按钮" />'
} 每执行一次,需要去计算document.body.innerHTML的内容,找到后往里添加一个按钮,
出于性能方面的考虑,先用一字符串存起来,最后再添加到document.body.innerHTML中,修改如下: var str = '';
for (var i=0;i<3000;i++) {
str += '<input type="button" value="按钮" />'
} document.body.innerHTML = str; 例子三:
for(var i=0;i<100;i++) {}
for(var i=0;i<200;i++) {}
并列的话,var变量赋值可以是同名 for(var i=0;i<10;i++) {
for (var j=0;j<10;j++) {}
}
嵌套的话,var变量赋值不能相同
  • cssText 行间样式
   oDiv.style.width = '200px';
oDiv.style.height = '200px'; oDiv.style.cssText ='width:200px;height:200px;' 都是表示行间的样式,cssText是覆盖原先的行间样式。
  • this:指的是调用当前方法(函数)的那个对象
  1、alert(this) = window.alert(this)    this=>window
2、function(){} = window.function() {}
3、
function fn1() {
this
}
fn1(); this=>window
4、
oDiv.onclick = fn1; this=>oDiv
5、
oDiv.onclick = function() {
this this=>oDiv
}
6、 oDiv.onclick = function() {
fn1(); fn1()里的this=>window
}
7、<div onclick=' this '></div> this=>div
8、<div onclick=' fn1() '></div> fn1()里的this=>window 总结:
1、直接调用函数,比如:fn1() ,this=>window
2、谁调用this就是指谁

[妙味JS基础]第二课:for应用、this关键字的更多相关文章

  1. [妙味JS基础]第一课:属性操作、图片切换、短信发送模拟

    知识点总结 HTML的属性操作:读.写 元素.属性名 => “读” 元素.属性名=新的值 => “写” 例如: oBtn.value => “读” oBtn.value='按钮' = ...

  2. [妙味JS基础]第九课:定时器管理、函数封装

    知识点总结 函数封装 回调函数 实例:抖动函数 获取当前的位置 通过数组来实现,一正一负,直到恢复成0为止. 当前位置与数组中各值相加

  3. [妙味JS基础]第六课:作用域、JS预解析机制

    知识点总结 浏览器的解析方法 script 全局变量,全局函数 自上而下 函数 由里到外 "JS的解析器": 1)“找一些东西”:var function 参数 var a=未定义 ...

  4. [妙味JS基础]第四课:JS数据类型、类型转换

    知识点总结 JS数据类型:number数字(NaN).string字符串.boolean布尔值.函数类型.object对象(obj.[].{}.null).undefined未定义 typeof 用来 ...

  5. [妙味JS基础]第十二课:数组随机、数组去重

    知识点总结 json var json={'name':'abc'} 属性加分号为安全的写法 json: 只能用for in 数组:for和for in 都可以使用 json没有length和下标 数 ...

  6. [妙味JS基础]第十一课:字符串、查找高亮显示

    知识点总结 字符串方法 var str = '2014年新春快乐哈' * length 字符串长度 str.length =>10 ------------------------------- ...

  7. [妙味JS基础]第十课:日期对象、时钟倒计时

    知识点总结 时间.年.月.日.时.分.秒 new Date() ->当前系统的时间对象 数字类型: getFullYear().getYear().getUTCFullYear() getYea ...

  8. [妙味JS基础]第八课:return、定时器基础

    知识点总结 return 1)函数名+括号 = return 返回值 2)所有的函数默认的返回值 = 未定义 3)return后面的代码不执行 arguments  =>为实参的集合,当参数个数 ...

  9. [妙味JS基础]第七课:运算符、流程控制

    知识点总结 &&(与).||(或).!(非) 与: alert(20 && 20>100) => false alert(20 && 20& ...

随机推荐

  1. WebView使用input file控件打开相册上传图片

    使用 WebView 直接用 控件选择相册图片 package com.moguzhuan.android.zhuan; import android.annotation.TargetApi; im ...

  2. 【C#】Deep copy of objects

    If you learned C++ carefully, you must have known something about the copy of object. For example, I ...

  3. grunt--自常用配置文件--js/样式压缩打包,sass工具整合使用

    // Project configuration. module.exports = function(grunt) { // 使用严格模式 'use strict'; // 这里定义我们需要的任务 ...

  4. chrome ipc 网摘

    http://my.oschina.net/myspaceNUAA/blog/81632?p=1 http://lihuan623.blog.163.com/blog/static/138595845 ...

  5. CentOS部署yum本地源和共享

    约定yum本地源的机器IP为192.168.1.100,需要访问共享源的IP为192.168.1.101 关闭并禁止selinux和firewalld 创建本地源 1.上传centos7光盘镜像到指定 ...

  6. childNodes属性 和 nodeType属性

    childNodes属性可以用来获取任何一个元素的所有子元素,它是一个包含这个元素的全部子元素的数组:element.childNodes 如果需要把某个文档的body元素的全体子元素检索出来.首先使 ...

  7. 读书笔记之《The Art of Readable Code》

    <The Art of Readable Code>- Dustin Boswell, Trevor Foucher    O'Reilly出版 整体认知:这本书写得很好,每一章后面的总结 ...

  8. LeetCode 392. Is Subsequence

    Given a string s and a string t, check if s is subsequence of t. You may assume that there is only l ...

  9. 自定义实现IEnumerable

    Demo: http://files.cnblogs.com/files/georgeHeaven/Demo.IEnumerable.rar 一.使用场景 在开发过程中,经常需要使用foreach来循 ...

  10. mysql中timestamp的自动生成与更新

    转自:mysql中timestamp的自动生成与更新 MYSQL中TIMESTAMP类型可以设定默认值,就像其他类型一样.1.自动UPDATE 和INSERT 到当前的时间:表:----------- ...