[妙味JS基础]第二课:for应用、this关键字
知识点总结
- 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关键字的更多相关文章
- [妙味JS基础]第一课:属性操作、图片切换、短信发送模拟
知识点总结 HTML的属性操作:读.写 元素.属性名 => “读” 元素.属性名=新的值 => “写” 例如: oBtn.value => “读” oBtn.value='按钮' = ...
- [妙味JS基础]第九课:定时器管理、函数封装
知识点总结 函数封装 回调函数 实例:抖动函数 获取当前的位置 通过数组来实现,一正一负,直到恢复成0为止. 当前位置与数组中各值相加
- [妙味JS基础]第六课:作用域、JS预解析机制
知识点总结 浏览器的解析方法 script 全局变量,全局函数 自上而下 函数 由里到外 "JS的解析器": 1)“找一些东西”:var function 参数 var a=未定义 ...
- [妙味JS基础]第四课:JS数据类型、类型转换
知识点总结 JS数据类型:number数字(NaN).string字符串.boolean布尔值.函数类型.object对象(obj.[].{}.null).undefined未定义 typeof 用来 ...
- [妙味JS基础]第十二课:数组随机、数组去重
知识点总结 json var json={'name':'abc'} 属性加分号为安全的写法 json: 只能用for in 数组:for和for in 都可以使用 json没有length和下标 数 ...
- [妙味JS基础]第十一课:字符串、查找高亮显示
知识点总结 字符串方法 var str = '2014年新春快乐哈' * length 字符串长度 str.length =>10 ------------------------------- ...
- [妙味JS基础]第十课:日期对象、时钟倒计时
知识点总结 时间.年.月.日.时.分.秒 new Date() ->当前系统的时间对象 数字类型: getFullYear().getYear().getUTCFullYear() getYea ...
- [妙味JS基础]第八课:return、定时器基础
知识点总结 return 1)函数名+括号 = return 返回值 2)所有的函数默认的返回值 = 未定义 3)return后面的代码不执行 arguments =>为实参的集合,当参数个数 ...
- [妙味JS基础]第七课:运算符、流程控制
知识点总结 &&(与).||(或).!(非) 与: alert(20 && 20>100) => false alert(20 && 20& ...
随机推荐
- tabindex属性
1. tabindex的用法: 可以设置tab键在控件中的移动顺序. 以下元素支持tabindex属性:<a> <input> <textarea> <are ...
- 使用pip安装报错的处理方法_2
终端更新pip出错 sudo pip install --upgrade pip : 1.ReadTimeoutError: HTTPSConnectionPool(host='pypi.Python ...
- 一键安装Redmine
群英汇·项目管理系统:http://www.ossxp.com/HelpCenter/00040_Redmine 其中包含中文说明及管理手册 一键安装下载:http://bitnami.org/sta ...
- 常用的meta标签总结
<!-- 关键字,搜所引擎 SEO --><meta http-equiv="keywords" content="关键字1,关键字2,..." ...
- bootstrap 混合标签
<html lang="zh_cn"> <head> <meta charset="utf-8"> <meta htt ...
- 【原生js】原生js实现验证码短信发送倒计时
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- .net XML操作
一.常规介绍 //初始化一个xml对象 XmlDocument xml = new XmlDocument(); //加载xml文件 xml.Load("文件路径"); //读取指 ...
- Python 实现类似PHP的strip_tags函数功能,并且可以自定义设置保留标签
最近在研究 Python ,发现用的还是很不习惯,很多PHP里面很简单的功能在Python 里面都得找半天,而且很多功能都得自己实现. 今天做个采集,需要过滤内容中的标签,搞了一下午,貌似终于搞出来了 ...
- CodeForces 671A Recycling Bottles
暴力. 每个人找到一个入口,也就是从回收站到这个入口走的路程由人的位置到入口的路程来替代. 因此,只要找两个人分别从哪里入口就可以了.注意:有可能只要一个人走,另一人不走. #pragma comme ...
- js数组操作-找出一组按不同顺序排列的字符串的数组元素
从一组数组中找出一组按不同顺序排列的字符串的数组元素将字符串转换成数组后再对数组进行 sort 排序,abcd 和 bdca 使用 sort 排序后会变成 abcd,将拍好序的字符串作为对象的 key ...