mysql常用操作
123452. mysql删除数据 DELETE FROM table_name [WHERE Clause] 如:
DELETE FROM table_name WHERE tutorial_id=3;
12345671. mysql link过滤 SELECT field1, field2,…fieldN table_name1, table_name2…WHERE field1 LIKE condition1 [AND [OR]] filed2 = ‘somevalue’ 可以使用LIKE子句代替等号(=), 当LIKE连同%符号使用,那么它就会像一个元字符的搜索,可以指定一个以上的条件使用AND或OR运算符,WHERE… LIKE子句可以使用SQL命令的DELETE 或 UPDATE ,也可以指定一个条件 如:
SELECT * from table_name WHERE tutorial_author LIKE '%aul';
1231. mysql ORDER BY排序 SELECT field1, field2,…fieldN tabl ...
css基础温故
三栏布局题目:假设高度已知,请写出三栏布局,其中左栏、右栏宽度各为 300px,中间自适应。解答:可以有很多种布局方式,这里列出五种:float布局,absolute布局,flex布局,table布局,grid布局,代码如下:
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416 ...
mysql连接池的premise封装
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051新建db.js, 内容如下:const mysql = require('mysql');// 创建连接池const pool = mysql.createPool({ connectionLimit: 5, host: process.env.dbHost, user: process.env.dbUser, password: process.env.dbPassword, database: process.env.dbDatabase, multipleStatements: true});let query = function (sql, values) { // 返回一个 Promise return new Promise((resolve, reject) => { pool.getConnecti ...
mac小技巧之zip加密解密
1.加密:
123456789101112131415161718192021222324252627281.进入文件目录> cd xxx(文件目录)只压缩单个文件zip -e xxx.zip yyy压缩文件夹zip -e -r xxx.zip yyy根据提示输入密码和确认密码即可完整的命令行及注释zip -q -r -e -m -o xxx.zip yyy-q 表示不显示压缩进度状态-r 表示子目录子文件全部压缩为zip //这部比较重要,不然的话只有something这个文件夹被压缩,里面的没有被压缩进去-e 表示你的压缩文件需要加密,终端会提示你输入密码的-m 表示压缩完删除原文件-o 表示设置所有被压缩文件的最后修改时间为当前压缩时间当跨目录的时候是这么操作的zip -q -r -e -m -o ‘\user\someone\syyy\xxx.zip’ ‘\users\yyy’
1.解密:
1unzip FileName.zip
原生(Android iOS)webview与js(vue)交互
1.Vue和原生(ios和安卓)的交互(第一种方法)一、原生调用Vue方法1、Vue123456789101112131415mounted() { //将要给原生调用的方法挂载到 window 上面 window.callJsFunction = this.callJsFunction},data() { return { msg: "哈哈" }},methods: { callJsFunction(str) { this.msg = "我通过原生方法改变了文字" + str return "js调用成功" }}
在 methods 中定义一个供 Android 调用的方法 callJsFunction(str) , 并可接收一个参数 str,然后改变页面中的文字。
如果只是在 methods 中定义方法,原生调用会找不到这个方法。所以要在页面加载的时候将方法 ...
vue中使用svg
先安装svg-sprite-loader
1npm install svg-sprite-loader --save
vue.config.js
12345678910111213141516171819202122232425const path = require('path')module.exports = { chainWebpack: config => { const svgRule = config.module.rule('svg') // 清除已有的所有 loader,否则接下来的 loader 会附加在该规则现有的 loader 之后。 svgRule.uses.clear() svgRule .test(/\.svg$/) .include.add(path.resolve(__dirname, './src/assets/icons'))// 配置icons的目录 .end() .use('sv ...
js循环的几种方式
1.普通的for12345var arr = [1, 2, 3]for(let i = 0; i < arr.length; i++) { // 这里的i是代表数组的下标 console.log(i); // 0, 1, 2};最简单的一种,正常用的话也不会出现什么问题,想中断也可以中断,性能上也还可以
2.for…of…遍历(这种遍历支持ES61234567var arr = [1, 2, 3]for(var item of arr) { // item代表数组里面的元素 console.log(item); // 1, 2, 3}; 与forEach()不同的是,它可以正确响应break、continue和return语句性能要好于forin,但仍然比不上普通for循环这个方法避开了for-in循环的所有缺陷
3. forEach()1234567var arr = [1, 2, 3];arr.forEach((item, index, arr) => { // item为arr的元素,index为下标 ...
ES6模块
特点ES6 的模块自动开启严格模式,不管你有没有在模块头部加上 **use strict;**。
模块中可以导入和导出各种类型的变量,如函数,对象,字符串,数字,布尔值,类等。
每个模块都有自己的上下文,每一个模块内声明的变量都是局部变量,不会污染全局作用域。
每一个模块只加载一次(是单例的), 若再去加载同目录下同文件,直接从内存中读取。
export 与 import基本用法模块导入导出各种类型的变量,如字符串,数值,函数,类。
导出的函数声明与类声明必须要有名称(export default 命令另外考虑)。
不仅能导出声明还能导出引用(例如函数)。
export 命令可以出现在模块的任何位置,但必需处于模块顶层。
import 命令会提升到整个模块的头部,首先执行。
12345678910111213141516171819/*-----export [test.js]-----*/ let myName = "Tom"; let myAge = 20; let myfn = function(){ return "My nam ...
js之var let及const区别
对于这个问题,我们应该先来了解提升(hoisting)这个概念
12console.log(a) // undefinedvar a = 1
从上述代码中我们可以发现,虽然变量还没有被声明,但是我们却可以使用这个未被声明的变量,这种情况就叫做提升,并且提升的是声明。
我们已经了解了 var 声明的变量会发生提升的情况,其实不仅变量会提升函数也会被提升。
123console.log(a) // ƒ a() {}function a() {}var a = 1
对于上述代码,打印结果会是 ƒ a() {} ,即使变量声明在函数之后,这也说明了函数会被提升,并且优先于变量提升。说完了这些,想必大家也知道 var 存在的问题了,使用 var 声明的变量会被提升到作用域的顶部,接下来我们再来看 let 和 const 。
我们先来看一个例子:
123456789101112var a = 1let b = 1const c = 1console.log(window.b) // undefinedconsole.log(window. c) // u ...
js判断数据类型方法
判断js中的数据类型有一下几种方法:typeof、instanceof、 constructor、 prototype、 $.type()/jquery.type(),接下来主要比较一下这几种方法的异同。
先举几个例子:
123456var a = "helloworld";var b = 222;var c= [1,2,3];var d = new Date();var e = function(){alert(111);};var f = function(){this.name="22";};
1、最常见的判断方法:typeof1234567891011121314alert(typeof a) ------------> stringalert(typeof b) ------------> numberalert(typeof c) ------------> objectalert(typeof d) ------------> objecta ...








