- forEach 遍历所有元素
- every 判断所有元素是否都符合条件
- some 判断是否至少有一个元素符合条件
- sort 排序
- map 对元素重新组装,生成新数组
- filter 过滤符合条件的元素
//forEach
var arr = [1,23,4,4,121]
arr.forEach(function(item,index){
//遍历数组的所有元素
console.log(item,index)
})
//every
var arr = [1, 2, 3]
var result = arr.every(function (item, index) {
//用来判断所有数组元素,都得满足这一个条件
if (item < 4) {
return true
}
})
console.log(result)
//some
var arr = [1, 2, 3,4]
var result = arr.some(function (item, index) {
//用来判断所有数组元素,只要一个满足条件即可
if (item < 2) {
return true
}
})
console.log(result)
//sort
var arr = [1,23,123,436,4367,12]
var arr1 = arr.sort(function(a,b){
//从小到大排序
return a-b
//从大到小排序
//return b-a
})
console.log(arr1)
//map
var arr = [1,2,3,4]
var arr1 = arr.map(function(item,index){
//将元素重新组装并返回
return '<b>' +item+ '</b>'
})
console.log(arr1)
//filter
var arr = [1,2,3,4]
var arr1 = arr.filter(function(item,index){
//通过某一个条件过滤数组
if(item>=2){
return true
}
})
console.log(arr1)
hasOwnProperty( )证明对象具有指定的属性,且是自身的而不是原型链上继承的
obj.hasOwnProperty(key),检测key是不是obj自身的属性
Dom属性操作
- 新增节点
var div1=document.creatElement('div')
- 获取父元素和子元素
var div1 = document.getElementById('div1')
var parent = div1.parentElement
var child = div1.childNodes
div1.removeChild(child[0])
dom是哪种基本的数据结构? (树)
dom节点的Attribute和property有何区别?
property只是一个js对象的属性的修改
Attribute是对html标签属性的修改
Bom操作
- 检测浏览器的类型(navigator.userAgent)
- 解析url各部分
location.href //返回完整的 URL。
location.protocol //返回当前url的协议
location.pathname //返回url的路径部分
location.search //返回从?开始的url
location.hash //返回从#开始的url
location.port //返回当前url端口号
localStorage和sessionStroge
注意:ios safari隐藏模式下,localStorage.getItem 会报错,所以建议统一使用try-catch封装