javascript
小黑ii
每天进步一点点~~~
展开
-
JS 中数组、树常用方法总结
数组数组转树/** * 数组转树-递归版本 * @param list * @param pid * @returns {*[]} */export function listToTree (list, pid = -1) { const tree = [] for (let i = 0, total = list.length; i < total; i++) { const item = list[i] if (item.pid === pid) {原创 2021-10-04 11:57:06 · 351 阅读 · 0 评论 -
前端上传文件到金山云存储
前端上传文件到金山云存储获取签名封装方法使用运行结果获取签名上传文件之前公司文件都是用的腾讯云或阿里云的对象存储,现在有个项目甲方要使用金山云存储。在网上找了一下,暂时没有踩坑文章,现记录总结一下。目前在项目中使用POST Object的方式上传,相关文档参考:对象存储(KS3)POST Object-金山云获取签名import request from '@/utils/request'export default class CommonServer{ // 获取金山云上传签名 st原创 2020-07-30 10:42:08 · 1020 阅读 · 15 评论 -
Json对象与Json字符串互转(4种转换方式)
1.jQuery插件支持的转换方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象 2.浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器: JSON.parse(jsonstr); //可以将json字符串转换成json对象 JSON.string原创 2017-04-26 14:25:33 · 18818 阅读 · 0 评论 -
JS原型与原型链
1、什么是原型? JavaScript中,万物皆对象!但对象也是有区别的。分为普通对象和函数对象。Object、Array、Date、RegExp、Math等为普通对象。Function 是JS自带的函数对象。当用typeof得到一个函数对象的类型时,它仍然会返回字符串“function”,而typeof一个数组对象或其他的对象时,它会返回字符串“object”。alert(typeo原创 2017-07-16 19:17:02 · 326 阅读 · 0 评论 -
使用Promise封装简单Ajax方法
一直都很喜欢使用原生的JavaScript,特别是不需要考虑兼容性的场景(虽然少得可怜)。可惜ECMAScript并没有封装好的Ajax方法(其实也没什么必要有),自己动手使用Promise撸一个吧!GETfunction getJSON (url) { return new Promise( (resolve, reject) => { var xhr = new XMLH原创 2017-07-17 10:07:21 · 14824 阅读 · 0 评论 -
js下载base64格式的图片
直接看代码 //下载图片 download() { let imgData = 'data:image/png;base64,iVBORw0KGgoAAAANSUh........'; this.downloadFile('测试.png', imgData); }, //下载 downloadFile原创 2018-01-18 11:42:07 · 24060 阅读 · 11 评论 -
ES6、ES7、ES8知识点
概述ES全称ECMAScript,ECMAScript是ECMA制定的标准化脚本语言。目前JavaScript使用的ECMAScript版本为ECMAScript-262。ECMAScript 标准建立在一些原有的技术上,最为著名的是 JavaScript (网景) 和 JScript (微软)。它最初由网景的 Brendan Eich 发明,第一次出现是在网景的 Navigator 2.0 ...转载 2019-01-08 14:46:18 · 1227 阅读 · 0 评论 -
在前端项目中使用Git Hooks
在前端项目中使用Git Hooks具备基本工程素养的同学都会注重编码规范,而代码风格检查(Code Linting,简称 Lint)是保障代码规范一致性的重要手段。使用 Lint 会有什么好处呢?在我看来至少具有如下 3 点:更少的 Bug更高的开发效率,Lint 很容易发现低级的、显而易见的错误更高的可读性很多时候我们lint的校验是放在持续集成阶段,大概流程如下:代码提交 ...原创 2019-05-10 14:56:48 · 2969 阅读 · 4 评论 -
JS生成26个大小写英文字母
主要用到 str.charCodeAt()和 String.fromCharCode()方法–》使用 charCodeAt() 来获得字符串中某个具体字符的 Unicode 编码。–》fromCharCode() 可接受一个(或多个)指定的 Unicode 值,然后返回对应的字符串。//生成大写字母 A的Unicode值为65function generateBig_1(){ var s原创 2017-04-19 11:06:00 · 9101 阅读 · 0 评论 -
数组方法 sort() 大小写字母表排序
<script>//大小写字母表排序var a = ['ant', 'Bug', "cat", 'Dog'];var s = a.sort(function(s,t){ var a = s.toLowerCase(); var b = t.toLowerCase(); if(a < b) return -1;原创 2017-04-19 10:22:48 · 4751 阅读 · 0 评论 -
基于MVC的三级联动
Html代码:<div class="box"> <select class="make"> <option>请选择品牌</option> </select> <select class="model"> <option>请选择车型</option> </select> <select class="car">原创 2017-01-22 16:45:09 · 1151 阅读 · 0 评论 -
时间格式化函数
方法一://vue自定义过滤器Vue.filter('date',function(input){ var oDate=new Date(input); return oDate.getFullYear()+'-'+(oDate.getMonth()+1)+'-'+oDate.getDate()+' '+oDate.getHours(原创 2017-01-22 17:00:46 · 493 阅读 · 0 评论 -
封装自己的cookie库
var cookie = { //根据key值获取对应的cookie get:function(key){ //获取cookie var data = document.cookie; //获取key第一次出现的位置 pwd= var startIndex = data.indexOf(key+'=');原创 2017-02-13 09:38:50 · 2643 阅读 · 0 评论 -
获取元素距离页面的距离
function offset(element){ var pos={left:0, top:0}; var parents=element.offsetParent; pos.left+=element.offsetLeft; pos.top+=element.offsetTop; while(parents && !/html|body/i.test(parent原创 2017-01-23 15:30:22 · 3013 阅读 · 0 评论 -
解析url参数
方法一:function search(){ var a=window.location.search.length>1?window.location.search.substring(1):[]; var b= a.length>0? a.split("&"):[]; var obj={}; for(原创 2017-01-23 15:28:03 · 2090 阅读 · 0 评论 -
input输入框输满3个字符自动跳到下一个input输入框
html代码:<div id="demo"> <form action=""> <input type="text" maxlength="3"> <input type="text" maxlength="3"> <input type="text" maxlength="3"> <in原创 2017-03-02 10:26:33 · 11314 阅读 · 1 评论 -
js日期格式化函数
方法一:// 对Date的扩展,将 Date 转化为指定格式的String// 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,// 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)// 例子:// (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07原创 2017-03-02 17:18:20 · 450 阅读 · 0 评论 -
js中文转Unicode编码与解码
中文转为unicode 编码function encodeUnicode(str) { var res = []; for (var i = 0; i < str.length; i++) { res[i] = ( "00" + str.charCodeAt(i).toString(16) ).slice(-4); } return "\\u" + res.join("\原创 2017-03-02 17:34:56 · 8310 阅读 · 0 评论 -
jquery选择器空格与大于号、加号与波浪号的区别
空格:$(‘parent childchild’)表示获取parent下的所有的childchild节点(所有的子孙)。大于号:$(‘parent > child’)表示获取parent下的所有child的儿子( 第一代)。加号:$(‘pre + nextbrother’)表示获得pre节点的下一个兄弟节点,相当于next()方法波浪号:$(‘pre ~ brother’)表示获取pre节点的后面的原创 2017-02-08 18:48:15 · 695 阅读 · 0 评论