首页 > 代码库 > 数组 / 伪数组 判断及方法调用 (权威指南笔记)
数组 / 伪数组 判断及方法调用 (权威指南笔记)
数组判断方法
function isArrayLike(o){ if(o && //o非null.undefined typeof o === "object" && //o是对象 isFinite(o.length) && //o.length是有限数值 o.length > 0 && //o.length为非负数 o.length === Math.floor(o.length) && //o.length是整数 o.length < 4294967296 ){ //o.length<2^32 return true; }else{ return false; }}
伪数组 数组方法兼容性写法
Array.join = Array.join || function(a,sep){ return Array.prototype.join.call(a,sep);}Array.slice = Array.slice || function(a,from,to){ return Array.prototype.slice.call(a,from,to);}Array.map = Array.map || function(a,f,thisArg){ return Array.prototype.map.call(a,f,thisArg);}
用数组的方法操作字符串
var s = javascript;s.charAt(0); //原生的方法 >=‘j‘s[0] //>=‘j‘Array.prototype.join.call(s," ") //=> "j a v a s c r i p t"Array.prototype.filter.call(s,function(x){ return x.match(/[^aeiou]/);}).join(""); //=> "jvscrpt"
需注意,字符串是不变值,故当把它们作为数组看待时,它们是只读的,
数组的,push、sort、reverse、splice 等方法对它无效,而且使用这些
方法出现错误时,也不会有错误提示!!!
数组 / 伪数组 判断及方法调用 (权威指南笔记)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。