new 是实例化 类 的操作。针对定义与使用,有以下操作
继续阅读分类目录归档:js
js class类
传统的 JS 只有 对象 的概念,没有class类的概念,因为 JS 是基于原型的面向对象语言,原型对象特点就是将属性全部共享给新对象
但 ES6 引入了 class 类这个概念,通过 class 关键字可以定义类,这就是更符合我们平时所理解的面向对象的语言
class Person{ // 定义一个名为Person的类
// 构造函数,用来接受参数
constructor(x,y){
this.x = x; // this代表的是实例对象
this.y = y;
}
todoSome(){ // 这是个类的方法,不需要加function,有多个方法也不用逗号隔开
alert(this.x + “的年龄是” +this.y+”岁”);
}
}
利用 JS 替换标签的CSS类实现界面交互案例
原理:利用JS的 document.getElementsByClassName() 获取类对应的标签对象。并用Dom对象属性中的 onmouseover 捕获鼠标划过状态时 执行 替换CSS样式 方法,并让其他标签元素隐藏,实现界面交互效果
::栏目A呈现的内容::
我是SMM,其实不瞒你说。我已经继承了百万遗产
::栏目B呈现的内容::
我是Aipo,一个喜欢画画的中二少女
::栏目C呈现的内容::
我是叫夜夜,是群里的一个姬器人…
JS 的Date对象
创建 Date 对象的语法 (实例化):
// 实例化 Date类 并赋值给 nowTime let nowTime = new Date(); console.log(nowTime);//Thu Jul 29 2021 11:45:55 GMT+0800 (中国标准时间); // 返回时间戳 let nowTime = +new Date();
Date方法 | 解释说明 |
---|---|
getDate() | 返回月中的第几天(从 1 到 31) |
getDay() | 返回星期几(0-6) |
getFullYear() | 返回年份 |
getHours() | 返回小时(从 0-23) |
getMinutes() | 返回分钟(从 0-59) |
getMonth() | 返回月份(从 0-11) |
getSeconds() | 返回秒数(从 0-59)。 |
js字符串
在JavaScript里,字符串其实也是一个对象。所以它也拥有对象所拥有的方法和属性。
继续阅读JS数组的一些坑
在js里,用 typeof 判断 Array 数组其实返回的是 Object对象。所以不能直接用 typeof 来检测一个变量存的地址是否为数组。可用 instanceof 或者 Array.isArray() 来判断
继续阅读js的for in遍历对象
let obj={ '名字':'smm', '性别':'男', '工作':'程序员' } for(var key in obj){ //遍历属性名 console.log('::'+key+'::'); //遍历属性值 console.log(obj[key]); console.log('-------------'); }
结果
JS对象 构造函数
属性:特征,外貌
行为:做的事情,动词
//利用字面量创建JS对象 var person = { name: 'Aipo', age: 23, sex: '女', //类似匿名函数的样式 声明对象方法 sayHi: function () { console.log(this.name + '说了一句hi~'); } } //利用 new Object 创建对象 var person = new Object(); person.name ='Aipo'; person.age = 23; person.sex = '女'; person.sayHi = function () { console.log(this.name + '说了一句hi~'); }
person.sayHi();
//构造函数使用例子 function Member(uname, age, sex) { this.name = uname; this.age = age; this.sex = sex; this.sayHi = function () { console.log('大家好,我叫' + this.name + ',我已经' + this.age + '岁了。我性别为' + this.sex + '。见到你们很高兴'); } } //输入属性 实例化 var uesr=new Member('Aipo',23,'女'); //使用方法 uesr.sayHi();//输出:大家好,我叫Aipo,我已经23岁了。我性别为女。见到你们很高兴
要调用构造函数我们需要在其前面加一个new关键字,所以主要就是new在其作用,在执行new关键字后,很明显,他跟以往的函数调用就不同了,他会依次执行以下步骤:
1. new过后会产生一个空对象,作为一个返回的对象实例
2. 将空对象的原型指向了构造函数的prototype属性
3. 将空对象的值赋值给构造函数里面的this值
4. 开始执行构造函数里的代码(传入给这个新对象 属性和方法)
5. 返回这个对象