回调函数
let a = '' ;
function get ( callback) {
setTimeout ( ( ) => {
a = 'hello word' ;
callback ( a) ;
} , 2000 )
}
function fun ( val) {
console. log ( val) ;
}
get ( fun)
promise
let p = new Promise ( ( ( resolve, reject) => {
setTimeout ( ( ) => {
let a = '鸡腿' ;
resolve ( a) ;
} ) ;
} ) ) ;
p. then ( data=> {
console. log ( data) ;
} , err=> {
console. log ( err) ;
} ) ;
promise 抛出函数
function buy ( ) {
return new Promise ( ( ( resolve, reject) => {
setTimeout ( ( ) => {
if ( Math. random ( ) > 0.5 ) {
resolve ( '买' ) ;
} else {
reject ( '不买' )
}
} , Math. random ( ) * 1000 ) ;
} ) ) ;
}
buy ( ) . then ( data=> {
console. log ( data)
} , err=> {
console. log ( err) ;
}
) ;
console. log ( 'hello word' )
nodejs 数组方法
console. log ( "hello word!" ) ;
let arr = [ 1 , 2 , 3 , 4 , 5 , 607 ] ;
arr. forEach ( ( item, index) => {
if ( index > 3 ) {
return ;
}
console. log ( item, index) ; } )
for ( let arrKey in arr) {
console. log ( arrKey) ;
}
let person = { age: 12 , name: "jingfu" }
for ( let personKey in person) {
console. log ( person[ personKey] ) ;
}
console. log ( "--------------" )
for ( let value of arr) {
console. log ( value) ;
}
let newArr = arr. filter ( item=> item> 3 )
console. log ( arr, newArr)
let newArr2= arr. map ( item=> item+ 2 )
console. log ( arr, newArr2)
let result= arr. find ( item=> {
return item. toString ( ) . indexOf ( '7' ) > - 1
} )
console. log ( "find arr结果为:" + result) ;
let isEixed = arr. some ( item=> {
return item== 4
} ) ;
let sum= arr. reduce ( ( previousValue, currentVal, index, arr) => {
console. log ( previousValue, currentVal, index, arr)
return previousValue+ currentVal;
} , 0 ) ;
console. log ( "arr累加后结果为:" + sum)
let fruits = [ { 'count' : 3 , price: 5 } , { 'count' : 2 , price: 5 } , { 'count' : 3 , price: 9 } ] ;
let prices = fruits. reduce ( ( total, currentVal) => {
console. log ( total, currentVal)
return total+= currentVal. count* currentVal. price;
} , 0 )
console. log ( '总价为:' + prices) ;
let arr3 = [ 1 , 2 , 3 , 4 , 5 , 2 , 1 ] ;
let newArr3 = arr3. reduce ( ( pre, cur) => {
console. log ( pre, cur)
if ( ! pre. includes ( cur) ) {
return pre. concat ( cur)
} else {
return pre
}
} , [ ] ) ;
console. log ( "arr2去重后结果为:" + newArr3)