实现instanceof
function isInstanceOf(left,right) {
let leftProto = left.__proto__;
let rightProto = right.prototype;
return leftProto === rightProto
}
isInstanceOf([],Array); // true
传入一个带空格的多字符串,返回最长的字符的长度
const str = 'just tell me the length' // 答案是length的长度6
// 方法一:
const getMax = (str) => {
const arr = str.split(' ');
return Math.max(...arr.filter(item=>item.length>0).map(item=>item.length))
}
getMax(str); // 6
// 方法二:
function getMaxLength (str) {
const arr = str.split(' ').filter(item=>item.length>0);
let iLength = 0;
for (let i=0;i<arr.length;i++) {
iLength = arr[i].length>iLength?arr[i].length:iLength
}
return iLength
}
getMaxLength(str) // 6
ul 里创建5个li, 往第3个li插入一个节点
function createElem(){
const ul = document.createElement('ul');
for (let i=1;i < 6; i++ ) {
const li = document.createElement('li');
const ol = document.createElement('ol');
li.innerHTML=`这是一个li${i}`
ol.innerHTML=`这是一个ol${i}`
// 往第3个插入ol新节点,并更改内联样式颜色
if(i == 3) {
li.style.color = 'red';
li.insertBefore(ol,ul.childNodes[3])
}
ul.appendChild(li);
}
document.body.appendChild(ul)
}
window.onload = createElem();
获取所有img节点数组
document.querySelectorAll('img')
指定元素被设置指定的背景颜色
<h3>A h3 element</h3>
<h2>A h2 element</h2>
document.querySelector("h2, h3").style.backgroundColor = "red";
根据下方结构求二叉树最大深度
interface Node<T> { val: T left: Node<T> right: Node<T>}
const root = {
val: 4,
left: {
val: 2,
left: {
val: 1
},
right: {
val: 3
}
},
right: {
val: 5,
right: {
val: 6,
right: {
val: 7
}
}
}
}
当树为空,深度为0;
当树不为空,深度为左右子树中深度的最大值,加上这个节点本身所占的层数(1)
const getDepth = root => {
if (!root) return 0;
return Math.max(getDepth(root.left),getDepth(root.right))+1
}
getDepth(root) // 4
网友评论