自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 js:js的继承

js的继承1.原型链继承//父类function Animal (name) { this.name = name || 'Animal'; this.sleep = function(){ console.log(this.name + '正在睡觉!'); }}Animal.prototype.eat = function(food) {// 原型方法 console.log(this.name + '正在吃:' + food);};//子类function Cat

2021-04-05 22:27:13 102

原创 js:关于this的问题

关于this的问题this指向调用它的对象: var name = "The Window";//全局变量  var object = {    name : "My Object",    getNameFunc : function(){//它是object直接调用的,所以this指向object     var that = this;//这里的this为object      return function(){//它是window直接调用的,所以this指向window

2021-04-05 11:04:24 105

原创 js:js原型和原型链

js原型和原型链1.prototype(原型)每个函数都有一个 prototype 属性每一个JavaScript对象(实例)(null除外)在创建的时候就会与之关联另一个对象,这个对象就是我们所说的原型,每一个对象都会从原型"继承"属性。function Person() {//构造函数(类)}Person.prototype.name = 'Kevin';var person1 = new Person();//实例(对象)var person2 = new Person();con

2021-04-05 09:50:25 98

原创 js:函数的call和apply方法

函数的call和apply方法作用:1.改变函数的this指向区别:1.call的第二个参数需要用逗号列出来2.apply第二个参数为数组 var name = "全局中的name"; var obj1 = { name:"obj1中的name", func1:function(){ console.log(this.name); }, func2:function (a,b) {

2021-04-04 22:01:24 115

原创 linux:windows系统使用ssh连接远程服务器的用法

windows使用ssh连接远程服务器的用法连接远程服务器的用法1.打开cmd进入命令行工具,输入ssh,不是系统命令则安装ssh下载地址https://www.mls-software.com/opensshd.html2.下载完成将安装目录加入环境变量C:\Program Files\OpenSSH\bin3.远程连接服务器ssh user@host 如:ssh root@192.168.0.1114.Linux scp 命令用于 Linux 之间复制文件和目录。scp [可选参数] f

2020-12-23 13:52:10 613

原创 mongodb:在win7的32位系统下安装mongodb

在win7的32位系统下安装mongodb1.下载win32位的3.2.4版本(64位电脑无兼容问题)2.安装选custom最终安装目录 C:\Program Files\MongoDB\Server\3.2\bin3.创建C:\mongodb目录,下面创建data文件夹,logs文件夹和etc文件夹。logs中创建mongodb.log文件(?执行会自动创建)和etc下mongo.conf配置文件并在其中配置4.进入C:\Program Files\MongoDB\Server\3.2\bin

2020-12-22 23:08:03 497

原创 nodejs:快速创建express项目

快速创建express项目1.npm install -g express2.npm install -g express-generator3.express创建项目默认为jade模板引擎,若使用其他引擎,使用命令切换,用express --help查看命令express -e ejs projectName (-e为选择ejs模板)4.进入目录:cd projectName,然后安装项目依赖:npm install5.运行项目,并开启调试模式:SET DEBUG=projectName:*

2020-12-17 23:01:45 193

原创 微信:图片,文件上传和下载

图片,文件上传和下载1.图片上传wx.chooseImage({ count: 1,//最多可以选择的图片张数 sizeType: ['original', 'compressed'],//所选的图片的尺寸 sourceType: ['album', 'camera'],//选择图片的来源 success (res) { const tempFilePaths = res.tempFilePaths //图片的本地临时文件路径列表 (本地路径)

2020-10-07 16:42:24 237

原创 css:用calc计算移动端视口的宽度高度

用calc计算移动端视口的宽度高度vw 相对于视口的宽度。视口被均分为100单位的vwvh 相对于视口的高度。视口被均分为100单位的vh用法:width: calc(100% - 10px);height:calc(100vh - 10px);calc(100vh - 10px) 表示整个浏览器窗口高度减去10px的大小calc(100vw - 10px) 表示整个浏览器窗口宽度减去10px的大小实例:...

2020-10-03 14:53:37 1032 1

原创 js:json.stringify()与json.parse()的区别

json.stringify()与json.parse()的区别转https://www.cnblogs.com/echolun/p/9631836.html一、JSON.stringify()与JSON.parse()的区别JSON.stringify()的作用是将 JavaScript 对象转换为 JSON 字符串,而JSON.parse()可以将JSON字符串转为一个对象。使用JSON.parse()时,你的字符串必须符合JSON格式,即键值都必须使用双引号包裹:let str = ‘[“1”,

2020-09-30 12:04:11 118

原创 vue:项目中怎么使用vue-devtools工具

项目中怎么使用vue-devtools工具1.在项目中cnpm install vue-devtools -D2.node_modules文件中找到vue-devtools文件夹,将里面的vender文件拖到chrome浏览器的 更多工具-扩展程序中3.修改vender中的manifest中的:"background": { "scripts": [ "build/background.js" ], "persistent": true //为true

2020-09-22 14:19:40 850

原创 css:sass小记

sass小记1.默认变量$baseLineHeight:1.5 !default;body{ line-height: $baseLineHeight; }编译后的css代码:body{ line-height:1.5;}覆盖默认变量的方式也很简单,只需要在默认变量之前重新声明下变量即可:$baseLineHeight: 2;$baseLineHeight: 1.5 !default;body{ line-height: $baseLineHeight;

2020-09-21 17:04:35 80

原创 js:every和some和filter和map和find的区别

every和some和filter和find和map和forEach的区别1.every和someevery:全部条件都正确才返回truesome:有一个条件正确就返回truevar ages = [32, 33, 16, 40];function checkAdult(age) { return age >= 18;}function myFunction() { document.getElementById("demo").innerHTML = ages.ev

2020-09-16 05:48:47 535

原创 js:js实现几种排序算法(待补)

js实现几种排序算法1.冒泡排序比较相邻的元素。如果第一个比第二个大,就交换他们两个function testArr(arr){ for (var i = 0; i <= arr.length-1; i++) { for (var j = 0; j <= arr.length-1-i; j++) { if(arr[j]>arr[j+1]){ [arr[j], arr[j + 1]] = [arr[j + 1], arr[j]]; }

2020-09-08 10:26:43 92

原创 其他:markdown使用

markdown使用1.标题使用 # 号标记:# 一级标题## 二级标题### 三级标题#### 四级标题##### 五级标题###### 六级标题2.分隔线你可以在一行中用三个以上的星号来建立一个分隔线:***效果:3.删除线文字的两端加上两个波浪线 :~~BAIDU.COM~~效果:BAIDU.COM4.下划线下划线可以通过 HTML 的 <u> 标签来实现:<u>带下划线文本</u>效果:带下划线文本5.脚注

2020-09-03 09:35:24 117

原创 js:js封装库(待补)

js封装库1.addEventListener/* * obj:要绑定事件的对象 * event :事件(注意:这里不要on) * func:回调函数 */function bind(obj , event , func){ if(obj.addEventListener){ //大部分浏览器 obj.addEventListener(event , func, false); }else{ //IE8及以

2020-08-29 21:50:10 102

原创 js:js学习回顾(待补)

js学习回顾1.变量提升函数声明和变量声明总是会被解释器悄悄地被"提升"到方法体的最顶部。x = 5; // 变量 x 设置为 5elem = document.getElementById("demo"); // 查找元素 elem.innerHTML = x; // 在元素中显示 xvar x; // 声明 x变量初始化不会提升。var x = 5; // 初始化 xelem = document.getElementById("demo");

2020-08-28 04:19:48 105

原创 js:理解js的基本类型和引用类型

理解js的基本类型和引用类型1.基本类型1.1.基本的数据类型有:undefined,boolean,number,string,null。1.2.基本类型的变量是存放在栈内存的。var a = "hello"; var b = a; console.log(a); // helloconsole.log(b); // helloa = "world"; console.log(a); // worldconsole.log(b); // hello上述a,b

2020-08-27 05:59:55 260

原创 css:伪类:first-child,:nth-child(n),:nth-of-type(n)区别

first-child,:nth-child(n),:nth-of-type(n)p:first-child选择器匹配属于任意元素的第一个子元素的 元素p:nth-child(n)选择所有 p 元素的父元素的第二个子元素(目标元素可以不是p元素)p:nth-of-type(n)选择所有p元素第二个为p的子元素...

2020-08-21 15:39:17 372

原创 css:CSS布局 - 水平 & 垂直居中

CSS布局 - 水平 & 垂直居中1.元素水平居中&文本水平居中<div class="center"> <p>文本文本文本</p></div>.center {//元素水平居中 margin: 0 auto; width: 300px; border: 1px solid green;}.center {//文本水平居中 text-align: center; border: 1px

2020-08-21 01:14:23 148

原创 微信小程序:获取openid和session_key,access_token,UnionID

获取openid和session_key,access_token,UnionID1.openid和session_keyhttps://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/login/auth.code2Session.html调用 wx.login() 获取 临时登录凭证code ,并回传到开发者服务器。调用 auth.code2Session 接口,换取 用户唯一标识 OpenID 和 会话密钥 sessi

2020-08-17 13:14:03 1655

原创 微信小程序:wx.navageteTo等跳转api使用

wx.navageteTo等跳转api使用我们采用这样的方式进行描述页面栈:[ pageA, pageB, pageC ],其中pageA在最底下,pageC在最顶上,小程序宿主环境限制了这个页面栈的最大层级为10层。使用 wx.navigateTo({ url: ‘pageD’ }) 可以往当前页面栈多推入一个 pageD,此时页面栈变成 [ pageA, pageB, pageC, pageD ]。使用 wx.navigateBack() 可以退出当前页面栈的最顶上页面,此时页面栈变成 [ pag

2020-08-17 13:08:14 1204

原创 微信小程序:target与currentTarget的区别

微信小程序:target与currentTarget的区别target为触发事件的组件(触发事件的源头)currentTarget为当前组件当存在事件冒泡时:<view bindtap="outer">outter <view bindtap="inner">inner </view></view>当触发inner时,它输出一个对象,对象属性target与currentTarget的值皆为inner当冒泡到outter时,它输出一个对象

2020-08-17 13:04:15 444

原创 webpack:webpack+vue模板构建过程

笔记webpack:webpack+vue模板构建过程一、创建目录-npm init 生成package.json二、局部安装npm install webpack -D(没有@版本则安装最新版,此刻为4.42.0)三、全局安装npm install webpack -g四、全局和局部安装webpack-cli(4.x版本将cli工具分离了)五、创建src目录和目录下index.js文件,此新版本默认此目录和文件作为入口文件,否则webpack命令会出错,下为几种命令模式:默认4.x版本web

2020-08-17 01:38:37 203

原创 webpack:webpack安装全过程-注意wp版本

笔记webpack:webpack安装全过程-注意wp版本1、什么是webpackWebpack是前端一个工具,可以让各个模块进行加载,预处理,再进行打包。现代的前端开发很多环境都依赖webpack构建,比如vue官方就推荐使用webpack。2、简单使用下webpack2.1、首先我在 c 盘下新建一个webpack-demo1的文件夹,然后命令行进入该目录,执行 npm init --yes 项目初始化,该命令会在文件下生成一个package.json文件,该命令也可以是 npm init ,这

2020-08-17 01:32:37 217

原创 webpack:webpack安装全过程-4.x版本说明

笔记webpack:webpack安装全过程-4.x版本说明一、创建目录-npm init-生成package.json二、局部安装npm install webpack -D(没有@版本则安装最新版,此刻为4.42.0)三、全局安装npm install webpack -g四、(可选?)全局和局部安装webpack-cli五、创建src目录和目录下index.js文件,新版本要求有这目录和文件,否则webpack命令会出错,下为几种命令模式:1.4.x版本webpack命令为webpack

2020-08-17 00:03:30 576

原创 webpack:webpack小记

笔记webpack:webpack小记1.webpack作用2.webpack.config.js的配置3.webpack-dev-serverwebpack-dev-server用来自动打包的插件,文件有改动则自动打包,我们直接刷新网页就行。使用方法:npm install webpack-dev-server -d在webpack.config.js配置诶入口和出口文件在package.json中scripts项配置:“dev”:“webpack-dev-server --ope

2020-08-17 00:00:14 70

原创 笔记tp5:tp5模型操作

笔记tp5:tp5模型操作1.增://只是选好用的记录1.增加一条:$user = new User([ 'name' => 'thinkphp', 'email' => 'thinkphp@qq.com']);$user->save();2.增加多条:$user = new User;$list = [ ['name'=>'thinkphp','email'=>'thinkphp@qq.com'], ['name'=&g

2020-08-16 22:42:29 265

原创 笔记tp5:thinkPHP5笔记

thinkPHP5.0–基础篇第一章 thinkPHP5.0配置1.惯例配置(框架配置)convention.php----框架默认配置,用config()函数输出2.应用配置app同级目录创建一个conf文件夹,里创建config.php文件,配置覆盖convention.php3.扩展配置在conf文件夹下创建extra文件夹,里创建 需配置的项为文件名 文件里的配置为需配置项(数组)的内容(数组内容),扩展配置覆盖应用配置config4.场景配置第一种:在config.php里设置

2020-08-16 22:35:03 563

原创 笔记vue:vue父子组件通信分析

笔记vue:vue父子组件通信分析1.父组件向子组件中传数据父组件使用子组件的方法:在child组件上加个ref=”xx”,然后用this.$refs.xx.met()2.子组件通过触发父组件自定义的方法可以将子组件的数据传递给父组件...

2020-08-16 01:20:05 98

原创 笔记vue:小记

1.vue生命周期过程beforeCreate:实例化vue-> new Vue()created:已经可以取到实例中data和methods中的数据了beforeMount:在内存中生成模板mounted:将模板挂载到<div id="app"></div>上beforeUpdate:data已经被改变,但未跟页面同步,即页面还未重新渲染update:data与页面渲染的同步了beforeDestroy:实例还未销毁,中的各个还可用destroyed:实例

2020-08-16 01:17:53 100

原创 笔记php:本地服务器安装php-redis扩展

笔记php:本地服务器安装php-redis扩展1.根据本地服务器的phpinfo()查看当前php的版本2.根据上图php的版本等信息下载对应的php-redishttps://windows.php.net/downloads/pecl/releases/redis/2.2.7/根据图1下载图2中对应的redis版本3.配置php.ini在php.ini文件中加入两行(注意:把要按照下面的顺序来)extension=php_igbinary.dllextension=php_redi

2020-08-16 01:03:24 100

原创 笔记php:php面向对象

笔记php:php面向对象public只能被实例访问protected 被父类和子类访问,不能直接被实例访问private 只能在本类内部访问类内部 函数和属性 用 $this访问,外部用实例访问常量 类内部用self::const访问 外部用Class::const访问php面向对象中的final关键字可以用在类或函数前面,防止类被继承或函数在子类中被重写命名空间(防止不同文件导入同一个文件时两个相同名字的类或函数冲突)先在其文件中用namespace定义,然后在其

2020-08-15 17:27:31 79

原创 js:js的浅拷贝和实现深拷贝的方式

笔记php:浅拷贝和深拷贝a=[1,2,3,4,5];b=a;对a赋值操作,b的值也改变为浅拷贝,b的值不变为深拷贝浅拷贝赋值的是引用地址,指针指向同一个堆空间深拷贝则是相当于新增一个地址,指针指向不同堆空间实现深拷贝:https://www.jianshu.com/p/5f6cd3dabc1c1.使用es6var a=[1,2,3]var b=[...a];b.push(4); console.log(b);//1,2,3,4console.log(a)//1,2,32.

2020-08-15 15:25:24 141

原创 笔记nodejs:path.resolve()和path.join()的区别

笔记nodejs:path.resolve()和path.join()的区别一、path.join(path1,path2,path3…)作用:将路径片段使用特定的分隔符(window:\)连接起来形成路径,并规范化生成的路径。若任意一个路径片段类型错误,会报错。const path = require('path');let myPath = path.join(__dirname,'/img/so');let myPath2 = path.join(__dirname,'./img/so');

2020-08-14 22:54:20 718

原创 笔记nodejs:url.parse和util.inspect

笔记nodejs:url.parse和util.inspect1.url.parse浏览器打开得出结果2.util.inspect

2020-08-14 22:44:03 220

原创 笔记nodejs模块:url.parse和querystring.parse

笔记nodejs模块:url.parse和querystring.parse1.url.parse将一个URL字符串转换成对象并返回。var url = require('url');var a = url.parse('http://localhost:8080/one?a=index&t=article');console.log(a);//输出结果:{ protocol : 'http' ,auth : null ,host : 'localhost:8080' ,po

2020-08-14 22:36:37 1169

原创 笔记nodejs:module.exports和exports

nodejs模块-module.exports和exports导读:一个js文件即为一个模块,用下列两个暴露,用require引入。1.module.exports = {// 暴露对象}module.exports = function() {// …}module.exports = Hello;function hello(){};2.暴露方法或属性exports.world = world;exports.world = function(){}如果要对外暴露属性或方法

2020-08-14 15:54:43 132

原创 笔记nodejs:npm常用命令

npm常用命令npm -v //版本npm install npm -g //升级npm install npm install expressnpm install express -gnpm uninstall expressvar express = require(‘express’);npm lsnpm listnpm list -gnpm list grunt //查看某个模块的版本号npm update expressnpm search expressnpm i

2020-08-14 15:52:23 103

原创 笔记nodejs:nvm使用

nvm使用https://www.runoob.com/w3cnote/nvm-manager-node-versions.html1.使用 nvm 管理不同版本的 node 与 npm2.nvm 是 Mac 下的 node 管理工具Windows 下的 node,官方推荐使用 nvmw 或 nvm-windows3.一定要卸载已安装的 NodeJS,否则会发生冲突。然后下载 nvm-windows 最新安装包,直接安装即可4.nvm install 4.2nvm lsnvm ls a

2020-08-14 15:50:16 82

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除