__x__(69)0926第十一天__ JavaScript 指定函数对象的 this 上下文对象

指定函数对象的 this 上下文对象

即调用函数对象的 .call() 或者 .apply() 方法

指定 this 指向指定的对象。

  • function myFun(){
        document.write("我是"+this.name);
    }
    
    var sun = {name:"孙悟空"};
    var zhu= {name:"猪八戒"};

  • .call();

    • myFun.call(sun);    // 我是孙悟空
  • .apply();
    • myFun.apply(zhu);   // 我是猪八戒

原文地址:https://www.cnblogs.com/tianxiaxuange/p/9709395.html

时间: 2024-11-09 05:06:41

__x__(69)0926第十一天__ JavaScript 指定函数对象的 this 上下文对象的相关文章

__x__(68)0926第十一天__ JavaScript 数组的常用方法

数组的常用方法: 向数组末尾添加一个或多个元素,返回新长度 var arr = new Array(); arr.push("唐僧"); // 返回 1 删除数组最后一个元素,返回该值 document.write(arr.pop()); // 打印数组最后一个元素,并删除这个元素 在数组开头添加一个或多个元素,返回新长度 arr.unshift("玉帝","如来"); 删除数组第一个元素,返回该值 document.write(arr.shif

__x__(54)0918第七天__ JavaScript

JavaScript 运算符,也叫操作符 对一个或者多个值进行运算,都是会返回结果的. 比如: typeof    返回一个值的类型,返回值类型是字符串. 隐式类型转换: 任意值 = 任意值 + "";    // 就能转换成字符串 任意值 = 任意值 - 0;    // 就能转换成Number 任意值 = +任意值;    // 就能转换成 Number,更简洁 任意值 = !!任意值;    // 即可将 任意值 转换成布尔类型的值 算术运算符, 不会对等号右边的值产生影响: 对

__x__(75)1012第十三天__ JavaScript 包装对象

包装对象 所谓“包装对象”,就是分别与数值.字符串.布尔值相对应的Number.String.Boolean三个原生对象 这三个原生对象可以把原始类型的值变成(包装成)对象 var v1 = new Number(123); var v2 = new String('abc'); var v3 = new Boolean(true); typeof v1 // "object" typeof v2 // "object" typeof v3 // "obj

__x__(64)0925第十天__ JavaScript 对象的 toString() 方法改变输出

JavaScript 对象的 toString() 方法改变输出 在平常,我们 console.log(对象);    // 会打印 [Object Object] 但是我们想要更详细的输出,此时,我们可以重写 对象.toString() 方法 Person.toString = function(){ return "Person ["+this.name+" , "+this.gender+","+this.age+"]"

__x__(81)1017第十六天__ JavaScript 严格模式

严格模式 除了正常的运行模式,JavaScript 还有第二种运行模式:严格模式(strict mode).顾名思义,这种模式采用更加严格的 JavaScript 语法 同样的代码,在正常模式和严格模式中,可能会有不一样的运行结果. 一些在正常模式下可以运行的语句,在严格模式下将不能运行. 设计目的 早期的 JavaScript 语言有很多设计不合理的地方,但是为了兼容以前的代码,又不能改变老的语法, 只能不断添加新的语法,引导程序员使用新语法 严格模式是从 ES5 进入标准的,主要目的有以下几

__x__(53)0918第七天__ JavaScript 强制类型转换

其他进制的数字 二进制    以 0b 开头的 Number 八进制    以 0 开头的 Number 十六进制    以 0x 开头的 Number 注意:无论是多少进制的数字,输出都是十进制 强制类型转换 主要指的是将 变量类型 转换为String,Number,Boolean类型. 1. 转换为字符串 String 通过调用 String.toString() 方法 : Null .Undefined 没有 .toString() 方法,意味着不能用此方法转换 var a = 123;

__x__(59)0925第十天__ JavaScript 其他知识

对象的属性值 如果要使用特殊的属性名,需 对象["属性名"] = 属性值       // 存 对象["属性名"]       // 取 obj["123"] = 456; var n = "123"; // 可以传一个变量到 [] ,来取变量对应在 Object 中的属性值 console.log(obj[n]); 对象的属性值可以是任意数据类型,包括对象和函数. 使用 in 运算符来检查一个对象是否含有某属性 consol

__x__(60)0925第十天__ JavaScript 函数对象

1. 创建一个函数对象 var myFunc = new Function(); // typeof myFunc 将会打印 function 将要封装的代码以字符串的方式传递给构造函数 var aFunc = new Function("console.log('Hello!');"); console.log(aFunc); // 打印: " function anonymous(){ console.log("Hello!"); } " 使

__x__(63)0925第十天__ JavaScript 函数 上下文对象 原型对象

解析器在每次调用函数时,都会传递两个隐含参数: this    上下文对象 根据函数调用方式的不同,this 指向不同的对象 当作为普通函数调用时,this 指向全局对象 window 当作为对象的方法被调用时,this 指向调用该方法的对象 当作为构造函数调用时,this 指向创建的新对象 构造函数 出现的原因:由于目前为止,我们的对象都是用 new Object() 创建的,所以都是 Object 类的对象,不好区分...最好有个 Person 类,Animal 类 new Person()