发表于: 2017-03-31 20:53:14
2 1358
备注:因今天有事请假,所以完成的任务和遇到的问题较少。
任务三
今天完成的事情
- 1.使用jquery动态生成节点,添加节点。
- 2.完善修改任务2。
- 3.整理学习笔记。
明天计划的事情
- 1.完成任务三基本样式。
- 2.学习localstroge。
- 3.学习传输数据。
遇到的问题
如何创建dom节点?
jQuery 的工厂函数$(): $(html); 会根据传入的html 标记字符串创建一个DOM 对象, 并把这个DOM 对象包装成一个jQuery对象返回.
动态创建的新元素节点不会被自动添加到文档中,而是需要使用其他方法将其插入到文档中。
收获
- 1.学会了jquery的一些操作dom常见方法。
js学习笔记(主要摘录自 阮一峰-js标准参考教程)
数组
数组定义
数组的本质是对象。只不过数组比较特殊,数组的特殊性体现在,它的键名是按次序排列的一组整数(0,1,2…)。
var arr=[1,2,3,4,5];
console.log(Object.keys(arr));
返回的结果是["1","2","3","4","5"]。
length
length是可读可写的,如果人为设置一个小于当前成员个数的值,该数组的成员会自动减少到length设置的值。
将数组清空的一个有效方法,就是将length属性设为0。
如果人为设置length大于当前元素个数,则数组的成员数量会增加到这个值,新增的位置都是空位。
这里需要注意的是读取空位,返回的是underfined。
由于数组本质上是对象的一种,所以我们可以为数组添加属性,但是这不影响length属性的值。
length属性的值就是等于最大的数字键加1。
var arr=[1,2,3,4,5];
arr.length=8;
console.log(arr[7]);
arr.length=0;
arr["hello"]=2;
arr[3]=6;
console.log(arr.length);
console.log(arr[2]);
console.log(arr);
var hi="helloworld";
console.log(Array.prototype.slice.call(hi));
一个小思考,打印出来的结果分别是什么?
类数组的对象
有些对象被称为“类似数组的对象”(array-like object)。意思是,它们看上去很像数组,可以使用length属性,但是它们并不是数组,所以无法使用一些数组的方法。典型的类似数组的对象是函数的arguments对象,以及大多数DOM元素集,还有字符串。遍历类似数组的对象,可以采用for循环,也可以采用数组的forEach方法。
关于一个字符串如何使用数组的方法,需要用到原型和call。具体写法:Array.prototype.slice.call(hi)
in运算符
检查某个键名是否存在的运算符in,适用于对象,也适用于数组。
注意,如果数组的某个位置是空位,in运算符返回false。
var arr = [];
arr[100] = 'a';
100 in arr // true
1 in arr // false
for…in 循环和数组的遍历
for...in遍历数组的时候,不仅会遍历所有的数字键,还会遍历非数字键,所以遍历数组很少用for in来遍历。可以使用length或者foreach方法来遍历。
空位
空位表示数组没有这个元素,数组的空位不会影响到length属性。
比如
arr.length=0;
arr["hello"]=2;
arr[3]=6;
console.log(arr.length);
的结果是4。但是数字键只有3,而0,1,2都是空位。访问空位返回的结果是undefined,但是使用数组的forEach方法、for...in结构、以及Object.keys方法进行遍历,空位都会被跳过。
评论