[妙味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& ...
随机推荐
- hdu1043
#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#inclu ...
- Transform.TransformDirection 变换方向
官方描述: JavaScript ⇒ TransformDirection(direction: Vector3): Vector3; C# ⇒ Vector3 TransformDirection( ...
- JS的console使用
一,console输出的几种写法: console.error('错误信息') console.info('提示信息') console.warn('警告信息') console.log('普通信息' ...
- Objective-C运行时态消息传递--拼接方法名
做IOS开发的人都知道,Objective-C语言中方法的调用是运行时采取绑定的,在编译过程中只声明该方法的存在. 那么我们来简单说下在运行时,类的消息传递. 在运行时,每个方法如[self meth ...
- Kindeditor JS 富文本编辑器图片上传指定路径
js //================== KindEditor.ready(function (K) { var hotelid = $("#hotelid").val(); ...
- Maven之(八)约定优于配置
maven的配置文件看似很复杂,其实只需要根据项目的实际背景,设置个别的几个配置项而已.maven有自己的一套默认配置,使用者除非必要,并不需要去修改那些约定内容.这就是所谓的"约定优于配置 ...
- ios监听ScrollView/TableView滚动的正确姿势
主要介绍 监测tableView垂直滚动的舒畅姿势 监测scrollView/collectionView横向滚动的正确姿势 1.监测tableView垂直滚动的舒畅姿势 通常我们用KVO或者在scr ...
- Pass和ClassPath变量配置
1.pass环境变量配置的是可执行性文件bin目录,是为了在任意盘符下都可以运行javac.exe和java.exe所配置的. 2.classpath环境变量记录的是java类运行文件所在的目录,一般 ...
- RTMP直播应用与延时分析
直播应用中,RTMP和HLS基本上可以覆盖所有客户端观看,HLS主要是延时比较大,RTMP主要优势在于延时低. 一.应用场景 低延时应用场景包括: . 互动式直播:譬如2013年大行其道的美女主播 ...
- 4、Xcode8中的钥匙串保存数据取出时候为空的问题
Xcode7以及之前的版本直接使用Keychain存储数据即可,但是从Xcode8开始,再用之前的方法会发现,读取不到存进去的数据了,或者说,存储不进去了,原因是苹果加强了隐私保护,这个东西需要打开开 ...