null
console.log(typeof null) //表示 为 无对象 0
undefined
console.log(typeof undefined) //表示 无的原始值 NaN
以下4种为undefined 的情况
let o;
console.log(o)
let obj = {}
console.log(obj.a)
function fn(a,b){
console.log(a,b)
}
fn(4)
function abcd(){
console.log('111')
}
console.log(abcd())
foreach
1、没有返回值
2、不能用break打断
3、遍历的是value
let arr = ['a','b','c']
let res = arr.forEach(element =>{
console.log(element)
// break;
return element+'1'
})
map
1、有返回值(数组) 默认 return 是 undefined
2、接受的参数是一个函数 (key value)
3、不能用break打断
let arr = ['a','b','c']
let res = arr.map(value,key){
//break;
return value+'1'
}
js 递归求和1-100
function add(num1,num2){
let num = num1+num2
if(num2+1>100){
return num
}else{
return add(num,num2+1)
}
}
let sum = add(1,2)
console.log(sum) //5050
双向数据绑定
<inupt placeholder='请输入名字' id='username'>
显示值:<p id='uName'></p>
<script>
let obj = {}
Object.defineProperty(obj,'username',{
//取值
get: function(){
console.log('取值')
},
set: function(){
console.log('设置值')
document.getElementById('uName').innerText = val
},
})
document.getElementById('username').addEventListener('keyup',function(){
//event
obj.username = event.target.value
})
</script>