资讯专栏INFORMATION COLUMN

《JavaScript数据结构与算法》笔记——第1章 JavaScript简介

Cheng_Gang / 2630人阅读

摘要:异或左移右移删除属性不同类型之间比较在比较对象时,比较的是引用和是内部方法对不同的类型返回结果如下表对不同类型返回结果如下类申明函数有两种方法在原型上申明函数,只会创建一次,在所有实例中共享,可以节约内存和降低实例化的开销在类定义中申明函数

^     异或
<<    左移
>>    右移
delete    删除属性

不同类型之间“==”比较

===在比较对象时,比较的是引用

toNumber和toPimitive是内部方法

toNumber对不同的类型返回结果如下表

toPrimitive对不同类型返回结果如下

function Book(title, pages) {
    this.title = title;
    this.pages = pages;
}
// 类申明函数有两种方法
Book.prototype.printTitle = function () {
    console.log(this.title)
};
function Book(title, pages) {
    this.title = title;
    this.pages = pages;
    this.printTitle = function () {
        console.log(this.title)
    }
}
/**
* 在原型上申明函数,只会创建一次,在所有实例中共享,可以节约内存和降低实例化的开销
* 在类定义中申明函数,每个实例都会创建自己的函数副本
*
* 原型上声明只能声明公共函数和属性
* 类定义中声明可以声明只能在类内部访问的私有函数和属性
*/

ES6函数参数默认值

声明展开和剩余参数

数组结构

变量互换

属性简写

ES6的类声明方式

function Book(title, pages) {
    this.title = title;
    this.pages = pages;
}
Book.prototype.printTitle = function () {
    console.log(this.title)
};
// ES6语法
class Book {
    constructor(title, pages) {
        this.title = title;
        this.pages = pages;
    }
    printTitle() {
        console.log(this.title)
    };
}
// 继承
class ITBook extends Book {
    constructor(title, pages, technology) {
        super(title, pages);
        this.technology = technology
    }
    printTechnology() {
        console.log(this.technology)
    }
}
// JavaScript的继承是基于原型实现的
// 使用属性存取器(get、set方法)
class Person {
    constructor(name) {
        this._name = name
    }
    get name() {
        return this._name
    }
    set name(value) {
        this._name = value
    }
}
let Json = new Person("Json");
console.log(Json.name);// Json
console.log(Json._name);// Json
Json.name = "Tom";
console.log(Json.name);// Tom
Json._name = "Jerry";
console.log(Json.name);// Jerry

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/101403.html

相关文章

  • JavaScript数据结构算法笔记——7 字典和散列表

    摘要:在字典中,存储的是键,值,集合可以看作值,值的形式存储元素,字典也称为映射方法描述备注向字典中添加新元素通过某个键值从字典中移除对应的数据值判断某个键值是存在于这个字典中通过键值获取对应的数据值返回字典所有元素的数量删除字典中所有元素将字典 在字典中,存储的是[键,值],集合可以看作[值,值]的形式存储元素,字典也称为映射 方法 描述 备注 set(key,...

    zorro 评论0 收藏0
  • JavaScript数据结构算法笔记——2 数组

    数组操作方法 方法 描述 备注 push() 将元素添加到数组末尾 修改原数组 unShift() 将元素插入到数组首位(将每项向后移动一位,在第一位插入元素) 修改原数组 pop() 删除数组最后一个元素 修改原数组 shift() 删除数组第一个元素(将每项向前移动一位并删除最后一项) ...

    Martin91 评论0 收藏0
  • JavaScript数据结构算法笔记——4 队列

    摘要:队列遵循原则的一组有序的项向队列尾部添加一个项移除队列的第一项返回队列中第一项,对队列本身不做修改判断队列是否为空返回队列包含的元素个数优先队列根据优先级添加项最小优先队列移除队列的第一项返回队列中第一项,对队列本身不做修改判断队列是否 队列遵循FIFO(First In First Out)原则的一组有序的项 let Queue = (function () { let it...

    callmewhy 评论0 收藏0
  • JavaScript数据结构算法笔记——3

    摘要:栈是一种后进先出的有序集合函数创建栈各种属性和方法的声明需要一种数据结构来保存栈里的元素为栈声明一些方法添加一个或者几个新元素到栈顶移出栈顶的元素,同时返回被移出的元素返回栈顶的元素,不对栈做任何修改如果栈里没有任何元素就返回,否则返回移 栈是一种后进先出(LIFO)的有序集合 函数创建栈 function Stack() { // 各种属性和方法的声明 item ...

    cyqian 评论0 收藏0
  • JavaScript数据结构算法笔记——5 链表

    摘要:链表存储有序的元素集合,不同于数组,链表中的元素在内存中并不是连续放置,每个元素有一个存取元素本身的节点和一个指向下一个元素的引用组成。优点添加或者移除元素的时候不需要移动其他元素。 链表存储有序的元素集合,不同于数组,链表中的元素在内存中并不是连续放置,每个元素有一个存取元素本身的节点和一个指向下一个元素的引用组成。 优点:添加或者移除元素的时候不需要移动其他元素。只需要找到加入的节...

    sutaking 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<