Jimliu


一只刚上路的前端程序猿


javascript学习笔记1————作用域

javascript学习笔记1————执行环境及作用域

在javascript中每一段代码都有执行环境,全局变量和函数都是作为window对象那个的属性和方法创建的。某个执行环境中的所有代码被执行完毕后,该环境就会被销毁,包括其中的变量及函数定义。

在函数内部未定义的变量是全局变量,定义的变量只有局部变量,局部变量在作用域外访问不到
a = “梦想天空”; //全局变量
var b = “海外” ; //局部变量
当代码在一个环境中执行的时候,会创建变量对象的一个作用域链。

var color  = "blue";
function changeColor()
{
    var anotherColor = "red";
    function swapColor()
    {
        var tempColor = anotherColor;
        anotherColor = color;
        color = tempColor;
        //这里可以访问color,anoherColor和tempColor
    }
//这里可以访问color,anotherColor,但是不能访问tempColor
    swapColor();
}
//这里就只能访问color
changeColor();

用下图来解释上面代码的作用域

call()与apply()延长变量作用域

一段代码解释 call与apply的使用方法以及作用

//定义一个全局函数
function foo()
{
    console.log(this.friut);
}
//定义一个全局变量
var friut = "apple";
//自定义一个对象
var pack = {
    friut = "banner";
}
foo.apply(window);    //此时foo中的this相当于windows,输出apple

foo.apply(pace);      //此时foo中的this相当于pack,输出banner
最近的文章

string字符串方法

来自《javascript高级程序设计》的学习笔记1.访问字符串中特定字符的方法 charAt()和charCodeAt()var string = "hello javascript" console.log(string.charAt(1)) //'e' console.log(string.charCodeAt(1)) //'101' charCodeAt方法返回的是字母”e”的字符编码,与前两种方法有一种类似的方法是stringValue[1]访问第一个字符。 …

于  javascript, 基础, 学习笔记 继续阅读
更早的文章

我的第一篇博客

这是我的第一篇hexo博客,第一次使用markdown从知道可以使用github page搭建博客开始,就一直想搞一个能够分享自己想法的平台,为了展示和推销。 在准备面试期间,就写了一个简单的个人主页, 上一个github page。进行自我介绍。如果想展示的多一点的内容的话,就需要写一个类CMS了,还需要自己维护,失去了写博客的初衷,所以就一直在找github上的静态博客。 …

于  胡扯 继续阅读