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. 返回这个对象