function foo(n){
if(n<2) return n;
return foo(n-1)+foo(n-2);
}
let a=foo(6);
function test(a){
a=a+10;
}
var a=10;
test(a);
console.log(a);
var x=1234;
function test(x){
console.log(x);
var x=123;
function x(){
}
console.log(x);
function test(x){
console.log(x);
var x=123;
function x(){
}
console.log(x);
}
test(444);
test(444);

var obj={
name:'jack',
fun:function(){
console.log(this.name);
}
}
var obj2={
name:'jay'
}
var fun=obj.fun.bind(obj);
fun.call(obj2);
function f(n){
if(n<=3){
return 1;
} else{
return f(n-2)+f(n-6)+1;
}
}
var a=f(12);
console.log(a);
(function(callback){
person = {name:'Lily'};
callback(person);
})(function(obj){
obj.name = 'Lucy';
obj = {name:'Marry'};
});
执行后name的值
const fib=n=>n<=2?1:fib(n-2)+fib(n-1);
console.log(fib(5));
var user = {
count:1,
getCount:function(){
return this.count;
}
}
var func=user.getCount
console.log(func());