浅析js class

JavaScript015

浅析js class,第1张

在 ES6 规范中,引入了 class 的概念。使得 JS 开发者终于告别了,直接使用原型对象模仿面向对象中的类和类继承时代。

但是JS 中并没有一个真正的 class 原始类型, class 仅仅只是对原型对象运用语法糖。所以,只有理解如何使用原型对象实现类和类继承,才能真正地用好 class。

本质上js中class其实是构造函数的另一种写法,使之更加直观的展现构造器中的各项属性

基本使用

注意点:

(1)constructor是一个构造函数方法,创建对象时自动调用该方法

(2)constructor是类必须的一个属性,少了他类的创建会报错,如果我们不写的话js会给他自动加上

(3)this指的是实例化对象,就相当于构造函数中的this,指向的是当前创建的对象

(4)类中声明函数不需要function关键字,直接函数名即可

(5)方法之间不需要都好分割,加了会报错

因为本质上是构造函数的另一种写法,所以他的使用和一些其他特性都是和构造函数相似的。比如调用都是通过new关键字 并且class也存在prototype这个属性,通过她我们可以给这个类的原型对象定义属性。通过这个类创建出的对象一样会有这个属性

类的继承

子类继承基类后,同名的属性会覆盖掉基类,以上例子中两个类都有sayName函数,但是调用的时候输出的是子类的sayName。

一个构造函数可以使用 super 关键字来调用一个父类的构造函数。

同时类也支持get和set操作

您好,JSClass和Function之间更好用的,实际上并不是一个明确的答案,这取决于您的需求和使用场景。JSClass是一种面向对象的编程模型,它可以帮助您更轻松地组织代码,使您的代码更具可读性和可维护性。Function是一种更基础的编程模型,它可以帮助您更轻松地实现特定的功能,但是它不具备面向对象的编程模型所提供的可读性和可维护性。因此,如果您需要一个更加可读性和可维护性的代码,那么JSClass可能是更好的选择,而如果您需要实现特定的功能,Function可能是更好的选择。

当定义一个属性时,是使用id,还是使用class?我们平常在用DIV CSS制作Xhtml网页页面时,常会用到class 和id来选择调用CSS样式属性。对学习CSS的新手来说class和id可能比较模糊,同时不知道什么时候该用class,什么时候又用id,以及它们用法与限制是怎么样的。接下来我们就来详细了解CLASS与ID基本属性及用法。 DIV CSS中id与class使用原则id的使用原则:先来说说id,id具有唯一性,其使用原则也是依据这一特性建立的。id是不能重复的,所以在XHTML的结构中,大结构一定是用id。比如标志、导航、主体内容、版权。这些根据制定的规范命名为#logo,#nav,#content,#copyright等等,本着其唯一性的原则园子建议定义id尽量在外围使用。ID是表示着标签的身份,在JS脚本中会用到id,当JS要修改一个标签的属性时,JS会将id名作为该标签的唯一标识进行操作。也就是说ID只是页面元素的标识,供其他元素脚本等引用。假如你的页面里出现了两个ID那JS效果特性较出现逻辑错误不知道依据哪个ID来改变其标签属性。 在CSS里的ID不一定为JS而设置的,但是同样ID在页面里也只能出现一次,并且是唯一性。虽然可能我们才学DIV+CSS爱好者在一个页面里同时调用相同的ID多次但是仍然没有出现页面混乱错误,但是我们为了W3C及各个标准我们也要遵循ID在一个页面里唯一性。以免出现浏览器兼容问题。 class的使用原则:class在CSS的定义中具有普遍性。说白一点就是class具有可重复无限制的使用多次,园子建议大家尽量在结构内部使用。这样做的好处是有利于网站代码的后期维护与修改,这样的做法就会让所有的class都成为id的子级或是孙级。在我们写CSS的时候可以写成这样#father.child{…},另外需要注意的是尽量不要让class包含id,比如.father#child{…}如果写成这样很显然就非常不可取。当然这也只是相对于良好书写习惯的一些建议,仅供大家参考。 Class 在程序中称“类”,同时在CSS中也书面语也叫“类”。在CSS样式中以小写的“点”及“.”来命名如: .css5{属性:属性值} ,而在html页面里则以class="css5" 来选择调用,命名好的CSS又叫css选择器。如: .css5{属性:属性值} 选择器在html调用为“我是class例子 ”如果不知道怎么引用CSS,那就可以了解下css引用。 而且class(类)在同一个html网页页面可以无数次的调用相同的class类,在这里例子里则可以在对应的网页里可以无数次调用选择“css5”。这也说明class一般是用来调用css中的预配制属性的,比如说有一个预配制属性为如这里的“.class01{属性:属性值} ”,这样就可以像调用函数一样不用再一个网页页面里重复的配置一个“类”属性,而只需要写上一个class类选择,就可以在同一个页面里任何位置调用选择具有相同的CLASS类。Div css 页面中的ID是怎么个用法呢?通常我们在CSS样式定义的时候 以“#”来开头命名id名称如:#css5{属性:属性值} 这个也有点像class的定义,只是class是以小写句号“.”开头命名,而ID是以“#”好开头定义。那id是怎么个用法呢? Css里的ID用法与class用法一样,只是把class换成id。如例子:在CSS样式定义ID --- #css5{height:25pxwidth: 200px} ,调用ID --- 我是ID例子。其实两种方法的效果是一样的,但是id只能给一个元素指明类样式,而class可以在任一元素中定义它的样式。特别注意:在命名id和class类的时候特别要注意大小写,ID和class是对大小写非常敏感的,最好以英文开头,不要用中文命名CSS类名。 保持一个良好的代码书写习惯对于以后的代码维护会有很大的帮助