1.写出10个常用的数组方法 let arr = [1, 2, 23, 444, 5556, 777] arr.push(1) arr.pop() arr.unshift(2) arr.shift() arr.reverse() arr.splice(1,1) //从数组中删除并返回一段特定元素 console.log(arr.slice(2,4)); //返回特定一段元素,不影响旧数组 console.log(arr.join()); function join(arr, code = ',') { let str = '' for (let i = 0; i < arr.length; i++) { str += arr[i] + code } return str.substring(0, str.length - code.length) } console.log(join(arr,'---'));
arr.forEach(r => {
console.log(r);
})
let arr1 = [
{
name: "Simba",
age: 20
},
{
name: "Ace",
age: 30
},
{
name: "Roger",
age: 40
}
]
console.log(arr1.map(r => r.name));
console.log(arr1.map(r => r.age));
console.log(arr.filter(r => r % 2 === 0));
arr = arr.filter(r => {
return r <= 400
})
console.log(arr);
console.log(arr.some(r => r > 500));
arr.every(r => r % 2 === 0)
let add = (a, b) => a + b
console.log(add(10, 20));
2.写出10个常用的字符串方法
3.存一个有效期为7天的cookie,key = nickname, val = Ace
function setCookie(key, val, expires) {
let now = new Date()
now.setDate(now.getDate() + expires)
document.cookie = `${key}=${val};expires=${now.toUTCString()}`
}
function removeCookie(key) {
setCookie(key, null, -1)
}
setCookie('count', 22, 7)
// setCookie('age1', 33, 2)
removeCookie('age1')
console.log(document.cookie);
function getCookie(key) {
let obj = {}
let cookies = document.cookie.split('; ')
cookies.forEach(r => {
let kv = r.split('=')
let key = kv[0]
let val = kv[1]
obj[key] = val
})
if (key) return obj[key]
return obj
}
console.log(getCookie());
console.log(getCookie('age'));
console.log(getCookie('username'));
let a = 0
// if (a !== null && a !== '' && a !== undefined && a !== 0 && a !== false)
if (a) {
console.log(1111);
}
let a = '1111'
// if (!a) a = 20
// a = !a ? 20 : a
let a = 10
a = a || 20 //语法糖
// if (!a) {
// a = 20
// }
a > 0 && console.log(a)
if (a > 0) {
console.log(a)
}
4.删除上面那个cookie
5.获取地址栏 age=20&pirce=30&keywords=lv&cc=1 中的keywords参数的值
let obj = {}
let str = 'age=20&pirce=30&keywords=lv&cc=1'
let keys = str.split('&')
keys.forEach(r => {
let kv = r.split('=')
let key = kv[0]
let val = kv[1]
obj[key] = val
})
console.log(obj.keywords);
6.获取30~40之间的一个随机数
function rnd(max, min = 0) {
return Math.round(Math.random() * (max - min)) + min
}
console.log(rnd(40, 30));
console.log(rnd(40));
// 7.如何获取当前是星期几
// 0-6
function getWeek() {
let now = new Date()
return '星期' + '日一二三四五六'[now.getDay()]
}
console.log(getWeek());
8.手写一个补0的方法,如 repairZero(8) 变成 “08”
function repairZero(num) {
num = num.toString()
return num[1] ? num : ('0' + num)
}
console.log(repairZero(3));
console.log(repairZero(13));
9.写5个DOM选择器
document.getElementById
document.getElementsByClassName
document.getElementsByTagName
document.querySelector
document.querySelectorAll
10.innerHTML和outerHTML区别
let demo = document.getElementById('demo')
console.log(demo.innerHTML);
console.log(demo.outerHTML); //包含自身的标签