javascript 里面 with 关键字】的更多相关文章

原型和闭包算是JavaScript中最常见,最难以理解,最容易被当做问题的两个部分,当然还有它们的延伸,如作用域链,继承等等吧,我最近也是各种看,各种翻,记录点自己的心得,写写总会让自己的理解更深一些.(跟标题的关系不大啦,就感慨句,每次总感觉自己懂了,再翻还是收获满满) 先谈一下JavaScript中New关键字吧,通常我们通过它来创建一个类的实例对象,在JavaScript中,实例化对象之后,也就继承了类的属性以及方法.通过代码来演示一下 function Person(name){ thi…
Quiz 请看下面的代码,最后alert出来的是什么呢?(chrome下按F12,选择Console直接复制粘贴运行) var name = "Bob"; var nameObj ={ name : "Tom", showName : function(){ alert(this.name); }, waitShowName : function(){ setTimeout(this.showName, 1000); } }; nameObj.waitShowNam…
深入解析Javascript中面向对象编程中的this关键字 在Javascript中this关键字代表函数运行时,自动生成的一个内部对象,只能在函数内部使用.比如: function TestFunction(){ this.demoVal='This is a demo variable'; }; 随着函数使用的场合不同,this的值会发生改变.但是有一个总的原则:this指的是调用函数的那个对象. 接下来分情况讨论this关键字的使用: 1. 纯粹的函数调用(这是函数的通常用法,属于全局性…
前言: 看文章标题你就知道,这篇文章我只讲一个简单的Javascript的this关键字,说它简单——它又不简单,因为曾几何时我也对this关键字有些困惑,它也确实会让不少程序员感到不解——它像是一个身份多变的“指针”,有时仅看代码都很难分辨出其当前所指向的对象:恰好这两天我突然想到应该写篇关于Javascript方面的博客,也算是为以后的公司技术培训做点儿准备.这篇文章,我可能更倾向于,用代码来直接的体现我要描述的内容.好的文章不在于它的篇幅长.内容丰富,而在于或者说更重要的是——应该用言简意…
javascript有this关键字,它和javascript的执行上下文有着密切的关系,就是说this具体指代什么要根据它的上下文来判断. 一.this和对象的关系    var Person={ name:"xie yue", gender:"female", getName:function(){ alert(Person.name); } }; Person.getName(); 上面的代码中,我们定义了一个Person对象,对象中包含了name,gende…
深入理解Javascript之this关键字 作者: Laruence(   ) 本文地址: http://www.laruence.com/2009/09/08/1076.html 转载请注明出处 Javascript是一种很灵活的语言, 而This关键字又是灵活中的灵活, 但是因为它的灵活, 也注定了它的难用. 以前我用this的时候, 都会觉得不踏实, 老是担心它不知道怎么地就会指到另外的什么地方. 其实, 这都是因为, 我们对它的不了解. 刚好最近再给百度学院做<Javascript高级…
JavaScript中this关键字的使用比较 this关键字在JavaScript中,用的不能说比较多,而是非常多.那么熟悉this关键字的各种用法则显得非常关键. this有时候就是我们经常说的上下文,这个东西的指代对象.它灵活多变,有时候你看它是对象,有时候是window宿主对象. 1.this指向宿主对象 function myWindow() { this.id = 1; // 等价于window.id = 1 console.log(this); // 这里的this就是window…
学习JavaScript控制流及关键字概念前,对有过C语言学习经验的同学来说,那么关键字,控制语句概念并不陌生.我们先来看看C语言吧: C语言的32个关键字和9种控制语句 9种控制语句: if.if-else.while.do-while.for.switch.break.continue.return 32个关键字: auto :声明自动变量 一般不使用 根据关键字的作用,可以将关键字分为数据类型关键字和流程控制关键字两大类: auto double int struct break else…
和其他高级语言一样 javascript 中也有 new 运算符,我们知道 new 运算符是用来实例化一个类,从而在内存中分配一个实例对象. 但在 javascript 中,万物皆对象,为什么还要通过 new 来产生对象? 本文将带你一起来探索 javascript 中 new 的奥秘... 一.认识new运算符: function Animal(name){ this.name = name; } Animal.color = "black"; Animal.prototype.sa…
JavaScript 标识符,关键字和保留字 标识符 标识符(Identifier)就是名称的专业术语.JavaScript 标识符包括变量名.函数名.参数名和属性名. 合法的标识符应该注意以下强制规则: 第一个字符必须是字母.下划线(_)或美元符号($). 除了第一个字符外,其他位置可以使用 Unicode 字符.一般建议仅使用 ASCII 编码的字母,不建议使用双字节的字符. 不能与 JavaScript 关键字.保留字重名. 可以使用 Unicode 转义序列.例如,字符 a 可以使用"\…
写在前面 工作有那么一段时间了,但是在工作中,发现自己的理论知识还是有所欠缺.特别是在javascript上,很多东西其实自己属于知道要用这个,但是不知道为什么要这么用...这种情况很是尴尬了,所以写博客的很重要一个目的就是锻炼我自己的总结能力,把学到的东西总结出来,感觉这样能让我更快的去理解所学到的东西. ◇ 关于javascript理论 刚开始做前端的时候还是以完成功能为主,所以忽略掉了理论知识的重要性,但是随着工作的慢慢深入,发现很多原理还是要建立在对理论知识的理解与掌握上. 作为一个合格…
不管学习什么知识,习惯于把自己所学习的知识列成一个list,会有助于我们理清思路,是一个很好的学习方法.强烈推荐. 以下篇幅有点长,希望读者耐心阅读. 以下内容会分为如下部分: 1.涵义 1.1:this涵义 1.2:this指向的可变性 2.使用场合 2.1:全局环境 2.2:构造函数 2.3:对象的方法 3.使用注意点 3.1:避免多层嵌套this 3.2:避免数组处理方法中的this 3.3:避免回调函数中的this 1.涵义 1.1:this涵义 在我写的一篇关于 构造函数与new关键字…
作用 声明作用:如声明个变量. 语法 ? 1 var c = 1; 省略var 在javascript中,若省略var关键字而直接赋值,那么这个变量为全局变量,哪怕是在function里定义的. ? 1 2 3 4 5 6 7 8 <script type="text/javascript">   function Define() {     a = 2;   }   function Hello() {     alert(a);   } </script>…
javascript中关键字的问题,将名称替换了下,确实就没有问题了.现在将它的关键字和保留字贴出来,便于日后查看和避免在次出现类似的问题. 1 关键字breakcasecatchcontinuedefaultdeletedoelsefinallyforfunctionifininstanceofnewreturnswitchthisthrowtrytypeofvarvoidwhilewith2 保留字abstractbooleanbytecharclassconstdebuggerdouble…
this是Javascript语言的一个关键字它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用,下面分四种情况,详细讨论this的用法,感兴趣的朋友可以了解下. this是Javascript语言的一个关键字. 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用.比如, 复制代码代码如下: function test(){ this.x = 1; } 随着函数使用场合的不同,this的值会发生变化.但是有一个总的原则,那就是this指的是,调用函数的那个对象. 下面分四种情…
区分大小写 JavaScript中的一切(变量.函数名.操作符)都区分大小写.例如,变量名itbsl和变量名ITbsl是两个不同的变量. 标识符 所谓标识符,就是指变量.函数.属性的名字,或者函数的参数.标识符可以是按照下列格式规则组合起来的一或多个字符: 第一字符必须是一个字母.下划线(_).或一个美元符号($); 其它字符可以是字母.下划线.美元符号或数字: 注意: 不能把关键字.保留字.true.false和null用作标识符. 如何避免令人难堪的命名错误? 选择有意义的名称 标识符名称如…
JavaScript面向对象JavaScript 语言使用构造函数(constructor)作为对象的模板.所谓"构造函数",就是专门用来生成实例对象的函数.它就是对象的模板,描述实例对象的基本结构.一个构造函数,可以生成多个实例对象,这些实例对象都有相同的结构 构造函数的首字母大写,区分一般函数. 函数体内部使用了this关键字,代表了所要生成的对象实例. 生成对象的时候,必须使用new命令. 构造函数内部使用严格模式 'use strict',防止当做一般函数调用,这样就会报错.…
原文 new关键字做了什么 在JavaScript中,使用new关键字后,意味着做了如下四件事情: 创建一个新的对象,这个对象的类型是object: 设置这个新的对象的内部.可访问性和[[prototype]]属性为构造函数(指prototype.construtor所指向的构造函数)中设置的: 执行构造函数,当this关键字被提及的时候,使用新创建的对象的属性: 返回新创建的对象(除非构造方法中返回的是‘无原型’). 在创建新对象成功之后,如果调用一个新对象没有的属性的时候,JavaScrip…
JavaScript函数有4种调用方式,每种方式的不同之处在于this的初始化 一般而言,在JavaScript中,this指向函数执行时的当前对象 如果函数不属于任何对象,那么默认为全局对象,即HTML页面本身 而浏览器页面对象是浏览器窗口对象,即window对象.此函数会自动变为window对象的函数 因此,从这个层面上来说,myFunction()和window.myFunction()是一样的 function myFunction(a, b) { return a * b; } myF…
小提示 阅读本文,您需要了解JS的基本常识.您将花费40分钟完成本文的阅读. JS中的this关键字让很多新老JS开发人员都感到困惑.这篇文章将对this关键字进行完整地阐述.读完本文以后,您的困惑将全部消除.您将学会如何在各种不同的情形正确运用this. 我们和在英语.法语这样的自然语言中使用名词一样地使用this.比如,“John飞快地跑着,因为他想追上火车”.请注意这句话中的代指John的代名词“他”.我们原本也可以这样表达,“John飞快地跑着,因为John想追上火车”.按照正常的语言习…
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> <script language="JavaScript"> <!-- function P(name) { if (!(this instanceof P)) return new P(name); //return new P(…
这是我第二遍学this了,第一遍学的懵懵的.this指哪里都是凭我一个男人的直觉然后控制台输出看看对不对. 刚查了书.博客.视频.理解差不多了.毕竟菜鸡me: 一.首先介绍下什么是this this是一个标识符,它需要和值进行绑定,和变量差不多:但是在你的代码中,它不是和某个具体的值进行绑定.而是绑定到正确的对象上,一般来说参数究竟绑定在哪个对象上都是由定位函数参数规则所决定的. 二.this对象是在运行时基于函数的执行环境绑定的,当函数被作为某个对象的方法调用时,this等于那个对象. 代码一…
1.with的基本概念 with语句的作用是将代码的作用域设置到一个特定的作用域中,目的是为了简化多次编写访问同一对象的工作.基本语法如下: with (expression) statement 下面我们举个例子,来具体说明下: var qs = location.search.substring(1) var hostName = location.hostname var url = location.href 以上三个变量 qs\hostName\url 都是指向同一个对象locatio…
this永远指向函数运行时所在的对象!而不是函数被创建时所在的对象.也即:谁调用,指向谁.切记… 1.普通函数中的this 无论this身处何处,第一要务就是要找到函数运行时的位置. var name="全局"; function getName(){ var name="局部"; return this.name; }; alert(getName()); 当this出现在全局环境的函数getName中时,此时函数getName运行时的位置在 alert(getN…
<script type="text/javascript" charset="utf-8"> //this:this对象是指运行时期基于执行环境所绑定的 //this总是指向调用者,也就是说 谁调用了我,我就指向谁 var k = 10; function test(){ this.k = 20; //其实就是全局变量k,由于外边有k,这里就覆盖了10 this.a = 30; } /** * 标准写法:window.test(); * test();…
使用new关键字调用函数 test.js 代码如下 function Person(name, age, obj) { var o = new Object(); o.name = name; o.age=age; o.obj=obj; o.sayName=function(){ alert(this.name); } // return o; // this.sayName=function(){ alert(name); } console.log(this); } var friend=n…
简单说,this就是属性或方法“当前”所在的对象. 原文地址:https://wangdoc.com/javascript/oop/this.html…
简单介绍一下new new再熟悉不过了,new后面跟着构造函数,可以创建对象,这个对象的原型指向构造函数的原型对象,说起来可能有点绕,直接看代码吧 function Person(name, age){ this.name = name; this.age = age; } let person1 = new Person("张三", 22); console.log(person1.__proto__ === Person.prototype); // true console.lo…
function add(a, b) { alert(a + b); } function sub(a, b) { alert(a - b); } add.call(sub,3,1); //这个例子中的意思就是用 add 来替换 sub, //add.call(sub,3,1) == add(3,1) ,所以运行结果为:alert(4); //注意:js 中的函数其实是对象,函数名是对 Function 对象的引用. function Class1() { this.name = "class1…
this 是谁调用的时候,指定的是谁,通俗一点讲就是,函数是谁执行是不是由其中一个对象点出来的那就是代表它, 比如执行对象a中b函数a.b();这个b函数中this代表a; 当换成var c=a.b; c(); 这样执行的话,b函数赋值给了一个变量c,这样直接执行c 函数的时候,this代表整个window; 有个简易记法:看执行函数前面是否有对象,有对象点出来的函数执行时,this就是此对象;反之就是指window; var obj = { x: 1, fu: function () { co…