美文网首页菜鸟前端工程师我爱编程程序员
JavaScript学习笔记023-对象方法0包装对象0静态属性

JavaScript学习笔记023-对象方法0包装对象0静态属性

作者: Mr柳上原 | 来源:发表于2018-09-04 15:49 被阅读0次

Author:Mr.柳上原

  • 付出不亚于任何的努力
  • 愿我们所有的努力,都不会被生活辜负
  • 不忘初心,方得始终

时间过得真快

转瞬即逝

曾经以为过不去的坎

现在都快要遗忘了

岁月是把杀猪刀

果然

如此

前端也学了大半年了

距离node结课近在咫尺

又是一期课程毕业在即

愿我们所有的努力

都不会被生活辜负

<!DOCTYPE html> <!-- 文档类型:标准html文档 -->

<html lang='en'> <!-- html根标签 翻译文字:英文 -->

<head> <!-- 网页头部 -->

<meat charset='UTF-8'/> <!-- 网页字符编码 -->

<meat name='Keywords' content='关键词1,关键词2'/>

<meat name='Description' content='网站说明'/>

<meat name='Author' content='作者'/>

<title>前端59期学员作业</title> <!-- 网页标题 -->

<link rel='stylesheet' type='text/css' href='css/css1.css'/> <!-- 外链样式表 -->

<style type='text/css'> /*内部样式表*/

</style>

</head>

<body> <!-- 网页主干:可视化区域 -->

<script>
/*
对象方法:
object
*/
// 比较值是否相等
Object.is(1, "1"); // false 类似于===
// 注意点:此方法中,+0和-0不等,NaN和NaN相等

// 对象合并,合并对象的所有可遍历的值到第一个对象中
let obj1 = {a: 1, b: 2};
let obj2 = {c: 3, d: 4};
Object.assign(obj1, obj2); // obj1 = {a: 1, b: 2, c: 3, d: 4}

// 对象的键值
Object.keys(obj1); // ["a", "b"] 键
Object.values(obj1); // [1, 2] 值
Object.entries(obj1); // [["a", 1], ["b", 2]] 键值对

/*
静态属性:
只能被类调用的属性
*/
// es5 静态属性写法
function MyClass(){};
// 静态属性
MyClass.say = function (){
console.log("这是静态方法")
}
// es6 静态方法写法
class MyClass{
constructor(){
}
// static:静态方法 es6没有静态属性,只有静态方法
static say(){}
// 原型方法
add(){}
}

// es6 extends的super
class FatherClass{};
class MyClass extends FatherClass{
constructor(){
super();
super.xxx(); // 这里调用的是父类的原型方法(FatherClass.prototype.xxx())
}
// constructor以外的super不能直接调用,可以挂载调用
static say(){
super; // 静态方法的super指向父类(FatherClass),可以调用父类的静态方法
}
add(){
super; // 原型方法的super指向父类原型(FatherClass.prototype),可以调用父类的原型方法
}
}

// 静态属性和普通属性的区别
// 如果该方法面向的是当前类的所有实例,就使用原型方法
// 如果该方法面向的不仅仅只是该类的对象,就使用静态方法

// 包装对象
let str1 = "123"; // 值类型
let str2 = new String(123); // 引用型
str1.num = 1; // 临时产生一个对象,进行下一步操作前就消失了
sonsole.log(str1.num); // undefined 此处输入时又临时创建了一个对象

</script>

</body>

</html>

相关文章

  • JavaScript学习笔记023-对象方法0包装对象0静态属性

    Author:Mr.柳上原 付出不亚于任何的努力 愿我们所有的努力,都不会被生活辜负 不忘初心,方得始终 时间过得...

  • Python学习-面向对象

    查看所有Python相关学习笔记 面向对象 面向对象知识点汇总: 面向对象静态属性实例属性(self)静态方法(@...

  • Ajax

    一、Ajax对象 二、Ajax对象的属性和方法 1、Ajax对象的属性: ①readyState:Ajax状态码0...

  • Javascript 11 Math

    Math对象是JavaScript的内置对象,提供一系列数学常数和数学方法。Math对象只提供了静态的属性和方法,...

  • JavaScript-Math对象

    Math对象是JavaScript的内置对象,提供一系列数学常数和数学方法。Math对象只提供了静态的属性和方法,...

  • Math函数应用场景

    Math对象是JavaScript的内置对象,提供一系列数学常数和数学方法。Math对象只提供了静态的属性和方法,...

  • Math 对象

    Math对象是JavaScript的内置对象,提供一系列数学常数和数学方法。Math对象只提供了静态的属性和方法,...

  • JSmath

    Math对象是JavaScript的内置对象,提供一系列数学常数和数学方法。Math对象只提供了静态的属性和方法,...

  • JavaScript ☞ day2

    JavaScript基础学习笔记之JavaScript提升 了解时间 Date Date对象的方法 Date对象间...

  • python面向对象学习笔记-01

    学习笔记 # 0,OOP-Python面向对象 - Python的面向对象 - 面向对象编程 - 基础 -...

网友评论

    本文标题:JavaScript学习笔记023-对象方法0包装对象0静态属性

    本文链接:https://www.haomeiwen.com/subject/qvogwftx.html