随笔分类 -  javascript

摘要:js在字符串中引入变量有两种方式:1.通过 + 号连接起来,例如: “hello " + var_name + " World”2.使用`${}`的形式 测试: 分析:可以看出,这两种方法对数字类型、字符串类型、数组类型的都是有效的,但是对object类型的不起作用。如果要处理object类型的话, 阅读全文
posted @ 2020-08-13 10:05 华子web 阅读(3928) 评论(0) 推荐(0)
摘要:1、不能是变量 var obj = {}; obj.AttrName = 'Tom' 注意:通过 对象.属性名 获取属性值的时候,属性名(AttrName )不能是一个变量。 2、可以是变量 原始数据数组: var rawDataList = [ { "countDate": "2018-04-08 阅读全文
posted @ 2020-06-19 17:21 华子web 阅读(4674) 评论(0) 推荐(0)
摘要:(1)组件:首先最广的应该是组件。凡是在软件开发中用到了软件的复用,被复用的部分都可以称为组件。 (3)控件:控件也是组件中的一种。控件就是具有用户界面的组件(可视化组件),比如:按钮、列表框、编辑框或者某个对话框中的静态文本等。 (2)插件:插件是组件中中的一种,凡是在应用程序中已经预留接口的组件 阅读全文
posted @ 2020-01-15 09:18 华子web 阅读(8359) 评论(0) 推荐(0)
摘要:一、JavaScript原型链 ECMAScript中描述了原型链的概念,并将原型链作为实现继承的主要方法。其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法。在JavaScript中,用 __proto__ 属性来表示一个对象的原型链。当查找一个对象的属性时,JavaScript 会 阅读全文
posted @ 2019-04-17 13:22 华子web 阅读(164) 评论(0) 推荐(0)
摘要:在JavaScript中,函数其实是对象,每个函数都是Function类的实例,既然函数对象,那么就具有自己的属性和方法,因此,函数名实际上也是一个指向函数对象的指针,不会与某个函数绑定。 一、函数的声明 方式一:常规方式 方式二:函数表达式 方式三:动态创建函数(这种方式用得不多) 测试: 测试结 阅读全文
posted @ 2019-04-12 14:18 华子web 阅读(227) 评论(0) 推荐(0)
摘要:在​J​a​v​a​S​c​r​i​p​t​中​可以使​用​类的p​r​o​t​o​t​y​p​e属性来​扩​展​类的属​性​和​方​法,在实际开发当中,当JavaScript内置的那些类所提供的动态方法和动态属性不满足我们实际开发时,我们就可以通过"prototype"属性给自定义类添加方法和属性 阅读全文
posted @ 2019-04-10 10:43 华子web 阅读(125) 评论(0) 推荐(0)
摘要:前两天在网上无意中发现了一篇使用极简主义法定义JavaScript类的文章,原文链接,这个所谓的"极简主义法"我还是第一次听说,是荷兰程序员Gabor de Mooij提出来的,这种方法不使用this和prototype,代码部署起来非常简单,这大概也是它被叫做"极简主义法"的原因。下面就介绍如何使 阅读全文
posted @ 2019-04-10 10:41 华子web 阅读(154) 评论(0) 推荐(0)
摘要:在Java和C#中,你可以简单的理解class是一个模子,对象就是被这个模子压出来的一批一批月饼(中秋节刚过完)。压个啥样,就得是个啥样,不能随便动,动一动就坏了。 而在javascript中,就没有模子了,月饼被换成了面团,你可以捏成自己想要的样子。 首先,对象属性可以随时改动。 对象或者函数,刚 阅读全文
posted @ 2019-01-28 15:18 华子web 阅读(159) 评论(0) 推荐(0)
摘要:为何用“继承”为标题,而不用“原型链”? 原型链如果解释清楚了很容易理解,不会与常用的java/C#产生混淆。而“继承”确实常用面向对象语言中最基本的概念,但是java中的继承与javascript中的继承又完全是两回事儿。因此,这里把“继承”着重拿出来,就为了体现这个不同。 javascript中 阅读全文
posted @ 2019-01-27 16:45 华子web 阅读(169) 评论(0) 推荐(0)
摘要:又介绍一个老朋友——instanceof。 对于值类型,你可以通过typeof判断,string/number/boolean都很清楚,但是typeof在判断到引用类型的时候,返回值只有object/function,你不知道它到底是一个object对象,还是数组,还是new Number等等。 这 阅读全文
posted @ 2019-01-27 16:10 华子web 阅读(205) 评论(0) 推荐(0)
摘要:注意:本文不是javascript基础教程,如果你没有接触过原型的基本知识,应该先去了解一下,推荐看《javascript高级程序设计(第三版)》第6章:面向对象的程序设计。 上节已经提到,每个函数function都有一个prototype,即原型。这里再加一句话——每个对象都有一个__proto_ 阅读全文
posted @ 2019-01-27 15:32 华子web 阅读(168) 评论(0) 推荐(0)
摘要:既typeof之后的另一位老朋友! prototype也是我们的老朋友,即使不了解的人,也应该都听过它的大名。如果它还是您的新朋友,我估计您也是javascript的新朋友。 在咱们的第一节(深入理解javascript原型和闭包(1)——一切都是对象)中说道,函数也是一种对象。他也是属性的集合,你 阅读全文
posted @ 2019-01-27 14:45 华子web 阅读(192) 评论(0) 推荐(0)
摘要:上文(理解javascript原型和作用域系列(1)——一切都是对象)已经提到,函数就是对象的一种,因为通过instanceof函数可以判断。 对!函数是一种对象,但是函数却不像数组一样——你可以说数组是对象的一种,因为数组就像是对象的一个子集一样。但是函数与对象之间,却不仅仅是一种包含和被包含的关 阅读全文
posted @ 2019-01-27 14:31 华子web 阅读(166) 评论(0) 推荐(0)
摘要:“一切都是对象”这句话的重点在于如何去理解“对象”这个概念。 ——当然,也不是所有的都是对象,值类型就不是对象。 首先咱们还是先看看javascript中一个常用的运算符——typeof。typeof应该算是咱们的老朋友,还有谁没用过它? typeof函数输出的一共有几种类型,在此列出: 以上代码列 阅读全文
posted @ 2019-01-27 14:12 华子web 阅读(199) 评论(0) 推荐(0)
摘要:在工作中经常用到JavaScript,今天总结一下JavaScript编写类的几种写法以及这几种写法的优缺点,关于JavaScript编写类的方式,在网上看到很多,而且每个人的写法都不太一样,经常看到的就是以下几种方式。 1、构造函数方式 用构造函数模拟"类",在其内部用this关键字指代实例对象。 阅读全文
posted @ 2019-01-25 14:31 华子web 阅读(188) 评论(0) 推荐(0)
摘要:闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。很早就接触过闭包这个概念了,但是一直糊里糊涂的,没有能够弄明白JavaScript的闭包到底是什么,有什么用,今天在网上看到了一篇讲JavaScript闭包的文章(原文链接),讲得非常好,这下算是 阅读全文
posted @ 2019-01-21 17:07 华子web 阅读(170) 评论(0) 推荐(0)
摘要:JavaScript的this总结: 1、this不能在类定义的外部使用,只能在类定义的内部使用。 2、this所在的函数被哪个对象调用,那么this代表的就是哪个对象实例。 阅读全文
posted @ 2019-01-21 15:32 华子web 阅读(105) 评论(0) 推荐(0)
摘要:一、澄清概念 1.JS中"基于对象=面向对象" 2.JS中没有类(Class),但是它取了一个新的名字叫“原型对象”,因此"类=原型对象" 二、类(原型对象)和对象(实例)的区别与联系 1.类(原型对象)是抽象,是概念的,代表一类事物。 2.对象是具体的,实际的,代表一个具体的事物。 3.类(原型对 阅读全文
posted @ 2019-01-21 15:15 华子web 阅读(263) 评论(0) 推荐(0)
摘要:一、Object类介绍 Object类是所有JavaScript类的基类(父类),提供了一种创建自定义对象的简单方式,不再需要程序员定义构造函数。 二、Object类主要属性 1.constructor:对象的构造函数。 2.prototype:获得类的prototype对象,static性质。 三 阅读全文
posted @ 2019-01-17 15:22 华子web 阅读(248) 评论(0) 推荐(0)
摘要:JavaScript中的Array对象就是数组,首先是一个动态数组,无需预先制定大小,而且是一个像Java中数组、ArrayList、Hashtable等的超强综合体。 一、数组的声明 常规方式声明: 1、var arrName = new Array();//创建一个数组 2、var arrNam 阅读全文
posted @ 2019-01-15 10:25 华子web 阅读(188) 评论(0) 推荐(0)