全局作用域和私有作用域的区别;
全局作用域:供所有代码执行的环境,只要浏览器不关闭就不会消失;
私有作用域:函数执行的时候,开辟的用来解析函数体的代码的新的栈内存,他也叫做私有作用域;
私有作用域可以访问全局作用域,全局作用域不能访问私有作用域;体现在:全局作用中可以访问和调用私有作用域中的变量;私有作用域不可以访问和调用全局作用域中的变量;
// var num = 1;
// var obj = {name: 'zx', age: 26};
// function sum() {
// var n = num;
// console.log(n);
// function fn() {
// console.log('函数')
// }
// fn();
// }
// sum();// 函数体里边的代码开始解析
// sum函数被调用,这时候会开辟一个全新私有作用域(全新栈内存),供我们函数体中的代码字符解析执行;
// 意义:理解全局作用域和私有作用域,同时也就理解全局变量和私有变量; 私有和全局之间的关系。所以全局变量也叫公共变量,公有变量。
// var obj = {name: 'zx', age: 26};
// function sum() {
// var n = num;
// console.log(n);
// function fn() {
// console.log('函数')
// }
// fn();
// }
// sum();// 函数体里边的代码开始解析
// sum函数被调用,这时候会开辟一个全新私有作用域(全新栈内存),供我们函数体中的代码字符解析执行;
// 意义:理解全局作用域和私有作用域,同时也就理解全局变量和私有变量; 私有和全局之间的关系。所以全局变量也叫公共变量,公有变量。
// 模仿 获取html结构
var obj = {
getElement: function (n) {
//console.log('获得id为'+n+'的结构');
// 函数执行的返回值
var m = 10;
var a = 100;
var b = 200;
var sum = n + a + b;
return sum ; // 定义好的关键字return
}
};
// 函数是一个方法,方法执行了需要有产出,靠return关键字来返回函数执行后你认为你需要返回的值。产出
var res = obj.getElement(); // return 返回的是什么我们变量得到的就是什么
console.log(res)