1:var box = new Object();  //创建一个对象
2:var box={
'name':'lee',
age:15
};
alert(box.name);
alert(box['name'])    //可以用   . (点) 加 数组格式取出对象里的属性  但是必须要保证属性名加上引号取出

3:box.run = function(){
alert();
}                           //可以直接后期添加函数属性   

4:function objrun(){
return '123';
}
box.run = objrun();   //这种方法  alert(box.run)   调用时可以不用给run加括号
box.run = objrun;  //这种方法时  去掉外部方法的括号后  调用时 要 alert(box.run())  
这样加括号 能正常输出return的值 否则是把整个objrun的函数形式原样输出 5:var box ={ name:'ll', age:25, run:function(){ return '123'; } } alert(box.run()) //不加括号打印代码 加了才算真正调用run方法输出123 6:数组要点 var box =new Array(); // Array('延迟') 如果传入字符串 只是创建了一个数组内存位置 打印出 延迟 alert(box); // Array(10) 这样是创建了10个数组内存位置 如果某位置没有赋值 打印时用逗号占位置 7:var box=[1,2,] alert(box.length) //额外的逗号会让IE获取到 显示长度为3 而参数错误 火狐还是显示2长度 var box=[,,,] IE是4 长度 火狐是3长度 8;var box=[]; box.name=28; box['age'] = 'ss'; alert(box.name) //这样子赋值后是不会增加原数组的内存 单独打印box是不会显示name 和age的 但是对于 box[0] = 15 这种情况是可以单独打印box时会显示 15 也就是说当操纵下标来赋值时是可以改变创建的数组的内存大小 8:array.length = 10 可以强制定义数组大小 可以通过这个 .lenght来动态创建数组大小 box[box.lenght]= ;9:数组的内置方法 box.toString(); //这三种方法,当只是 var box=['li',12,'延迟']这样创建数组时 打印结果都一致,
但是当 var box = ['s',55, new Date()] 这种格式时,前两个方法打印标准格式时间 而最后一个是按照本地时间格式输出
如 2016-11-11 15;12;11 box.valueOf(); box.toLocaleString(); 10:使用 .join() 可以选择不用默认的逗号来分割元素 如var box=['li',1,'言辞'] box.join('|') 结果会显示为 li | 1 | 言辞 使用typeof 可以知道这个方法返回字符串类型 但是原数组类型还是object 11:数组的栈方法 后进先出 专门为数组提供了push() 和 pop()方法 box.push('jia') // 给数组末尾添加新元素 并且返回最新的数组长度 可以一次添加多个 box.push('jia','poo') box.pop() //移除数组最后一个元素 并且返回移除的元素 里面不需要参数 12:队列方法 先进先出 通过push()在后端添加 然后通过shift() 移除数组开头的元素 并且返回移除的元素 .unshift('讲述') 给数组前端添加新元素 并且返回最新的长度 但是不同浏览器对此方法返回值有所不同
例如IE对他返回值不是长度 而是undefined 所以这些返回值一般不利用 13:数组其他常用方法 a:box.reverse() //返回逆序显示的数组 (原数组的引用被逆序) b:box.sort() //从小到大排序 但是注意 sort()默认排序在数字排序上有些问题 因为数字和字符串排序算法一致 我们必须修改这一特征 修改方法是给sort(参数)
方法添加一个函数参数 通过这个参数返回值来确认是对数字还是字符排序 例如: function compare(v1,v2){ if(v1
<v2)return -1; //返回值必须是 -1 0 1这三个数字 else if(v1>v2)return 1; else return 0; } var box=[0,1,4,10,5]; //如果加上引号表示字符 那么排序是根据数字第一位来决定大小的 alert(box.sort(compare)); 不用加括号 只需传递函数名字 c:concat() 可以为基于当前数组创建一个新的数组 var box2=box.concat('jkl'); //创建新数组 并添加新元素末尾 d:slice() //基于当前数组获取指定区域元素并创建一个新数组 var box=[1,2,3]; var box2=box.slice(1) //输出 2,3 slice(1,3) 2-4之间的元素 即从下标为1的元素开始取 然后到下标为3的元素之前不包括下标为3的元素 e:splice()有三种功能 (1):删除功能 var box2 = box.splice(0,2) //截取前两个元素 原来的数组box被截取的元素被删除了 (2):插入功能 var box2 = box.splice(1,0,'计算机',‘111’) //没有截取 但在第二个位置上插入两条元素,原来的第二个元素被后移了 (3):替换功能 box.splice(1,1,100) //截取了第二条 替换成100 返回截取的元素 原数组box中被替换了100

 

posted on 2018-01-25 21:10  YKing_匆  阅读(247)  评论(1)    收藏  举报