
Javascript
Miever
talking is cheap,show me your code!
展开
-
JS实现tic tac toe
JS实现tic tac toe项目地址:https://github.com/Miever1/todo-list-js基本效果:具体实现:html:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="vi...原创 2020-01-08 14:30:10 · 770 阅读 · 0 评论 -
原生JS实现todo-list小项目
原生JS实现todo-list小项目该项目旨在练习和巩固JS的相应知识点,功能有但不仅限于基本DOM操作,事件触发,数据基本处理等。功能及界面参考:https://nourabusoud.github.io/vue-todo-list/项目地址:https://github.com/Miever1/todo-list-js基本效果如图:具体功能实现数据存储没有用到浏览器...原创 2020-01-08 14:17:38 · 1485 阅读 · 0 评论 -
react 实现左边列表移动到右边列表
效果如图:具体代码:import React, { Component } from "react"class Main extends Component { constructor(props) { super(props); this.state = { checkboxItems: [ ...原创 2020-01-08 13:41:47 · 1045 阅读 · 0 评论 -
JavaScript 继承
JavaScript 继承原型链ECMAScript中描述了原型链的概念,并将原型链作为实现继承的主要方法。其基本思想是利用原型继承另一个引用类型的属性和方法。简单回顾一下构造函数、原型和实例的关系:每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针。那么,假如我们让原型对象等于另一个类型的实例,结果会怎么样呢?显然,此时的原型对象将...原创 2019-10-26 15:13:18 · 149 阅读 · 0 评论 -
Javascript 原型模式
Javascript原型模式我们创建的每个函数都有一个prototype(原型)属性,这个属性是一个指针,指向一个对象,而这个对象的用途是包含可以由特定类型的所有实例共享的属性和方法。如果按照字面意思来理解,那么prototype就是通过调用构造函数而创建的那个对象实例的原型对象。使用原型对象的好处是可以让所有对象实例共享它所包含的属性和方法。换句话说,不必在构造函数中定义对象实例的信息,而...原创 2019-10-25 18:38:02 · 267 阅读 · 0 评论 -
递归
递归递归函数是在一个函数中通过名字调作用自身的情况下构成,如下所示。function factorial(num) { if(num <= 1) { return 1; } else { return num*factorial(num-1); }}这是一个经典的递归阶乘函数。虽然这个函数表面看来没有什么问题,但...原创 2019-10-20 18:57:55 · 165 阅读 · 0 评论 -
JavaScript 中创建对象的几种模式
JavaScript 中创建对象的几种模式虽然Object构造函数或对象字面量都可以用来创建单个对象,但这种方式有个明显的缺点:使用同一个借口创建很多对象,会产生大量重复的代码。为解决这个问题,人们开始使用工厂模式的一个变体。工厂模式工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程。考虑到ESMAScript中无法创建类,开发人员就发明了一种函数,用函数封...原创 2019-10-18 14:16:27 · 192 阅读 · 0 评论 -
Javascript中字符串操作方法
Javascript中字符串操作方法 拼接字符串concat() concat()用于将一或多个字符串拼接起来,返回拼接得到的新的字符串。先来看一个例子:var stringValue = "hello ";var result = stringValue.concat("world");console.log(result);console.log(stringValue)...原创 2019-10-14 17:41:46 · 227 阅读 · 0 评论 -
Javascript 函数中的apply()和call()
Javascript 函数中的apply()和call()每个函数都包含两个非继承而来的方法:apply()和call()。这两个方法的用途都是在特定的作用域中调用函数,实际上等于设置函数体内this对象的值。首先,apply()方法接收两个参数:第一个在其中运行函数的作用域,另一个是参数数组。其中,第二个参数可以是Array的实例,也可以是arguments对象。例如:function...原创 2019-10-14 15:23:32 · 176 阅读 · 0 评论 -
Javascript 数组的方法
Javascript 数组的操作方法1.concat()方法concat()方法可以基于当前数组中的所有项创建一个新的数组。具体的说,这个方法会先创建当前数组的一个副本,然后将接收到的参数添加到这个副本的末尾,最后返回新构建的数组。在没有给concat()方法传递参数的情况下,它只是复制当前的数组并返回副本。如果传递给concat()方法的是一或多个数组,则该方法会将这些数组中的每一项都添...原创 2019-10-10 14:01:04 · 156 阅读 · 0 评论 -
Javascript 数组中sort()方法
Javascript 数组中sort()方法在默认情况下,sort()方法按升序排列数组项——即最小的值位于最前面,最大的值排在最后面。为了实现排序,sort()方法会调用每个数组项的toString()方法,然后比较得到的字符串,以确定如何排序。即使数组中的每一项都是数值,sort()方法比较的也是字符串,如下所示:var values = [5,293,3,19,1];values...原创 2019-10-08 19:04:23 · 398 阅读 · 0 评论 -
Javascript数组中栈和队列方法
Javascript数组中栈和队列方法数组中栈方法 —— push()、pop()栈是一种LIFO(Last-In-First-Out,后进先出)的数据结构,也就是最新添加的项最早被移除。而栈中项的插入(叫做推入,push)和移除(叫做弹出,pop),只发生在一个位置,即栈的顶部。ECMAScript为数组专门提供了push()和pop()的方法,以便实现类似栈的行为。push...原创 2019-10-08 17:46:26 · 231 阅读 · 0 评论 -
Javascript的垃圾回收机制
Javascript的垃圾回收机制Javascript具有自动垃圾收集机制,也就是说,执行环境会负责管理代码执行过程中使用的内存。在编写Javascript程序时,开发人员不用再关心内存使用问题,所需内存的分配以及无用内存的回收完全实现了自动管理。这种垃圾收集机制的原理其实很简单:找出那些不再继续使用的变量,然后释放其占用的内存。为此,垃圾收集器会按照固定的时间间隔(或代码执行中预定的收集时间...原创 2019-10-07 20:15:05 · 171 阅读 · 0 评论 -
理解JavaScript中函数的参数
理解JavaScript中函数的参数ECMAScript函数的参数与大多数其他语言中的函数的参数有所不同。ECMAScript函数不介意传递进来多少参数,也不在乎传进来的参数是什么数据类型。也就是说,即便你定义的函数只接收两个参数,再调用这个函数的时候也未必一定要传递两个参数。可以传递一个、三个甚至不传递参数,而解析器永远不会有什么怨言。之所以会是这样,原因是ECMAScript中的参数在内部...原创 2019-10-07 16:27:32 · 212 阅读 · 0 评论 -
Javascript 相等操作符
Javascript 相等操作符ECMAScript中的相等操作符由两个等于号(==)表示,如果两个操作数相等,则返回true。而不相等操作符由感叹号后跟等号(!=)表示,如果两个操作数不相等,则返回true。这两个操作符都会先转换操作数(通常称为强制转换),然后再比较它们的相等性。在转换不同类型的数据类型时,相等和不相等操作符遵循下列基本规则:如果有一个操作数是布尔值,则在比较相等性...原创 2019-10-07 15:35:29 · 205 阅读 · 0 评论 -
var 操作符的注意点
var 操作符的注意点使用var操作符定义的变量将成为定义该变量的作用域中的局部变量。也就是说,如果在函数中使用var定义了一个变量,那么这个变量在函数退出后就会被销毁,例如: function test() { var message = 'hi'; //局部变量 } test(); alert(message);//错误! ...原创 2019-09-14 21:49:21 · 502 阅读 · 1 评论