各種排序算法

一、算法性能排序

情形一:数组长度 <= 45, 选择排序 ≈ 快速排序性能 ;
情形二:数组长度 > 45, 选择排序 劣于 快速排序性能;

总体比较: 快速排序 > 选择排序 > 冒泡排序;

总结:数组的元素越多,上面各种排序的性能差异越明显;

Read More

各种protoype

1、对象字面量的原型

1
2
3
4
5
var a = {};
var c = Object.getPrototypeOf(a);
var d = Object.prototype;

console.log(c === d); // true

通过对象字面量创建的对象,其原型[[Prototype]]实际上指向的是Object的prototype。由此可知,对象字面量创建对象的方法等效于通过new Object()方法。

2、函数的原型

var f = function(){};
//或者 function f(){}

Object.getPrototypeOf(f)  === Function.prototype;  // true
Object.getPrototypeOf(f)  ===  f.__proto__ //true  
f.__proto__ === Function.prototype; //true;
Function.prototype._proto_ === Object.prototype;  // true   
f.prototype   // {constructor: ƒ}

在js中,函数也属于对象,是Function构造函数的实例。因此函数的原型可以分两种:第一种是把函数当作对象时的原型,可以通过函数名的__proto__属性访问;第二种是把函数当作构造函数,这时直接通过prototype属性便可访问到该函数的原型。

fetch使用总结

fetch api

**fetch(url,options) **其中url 为请求路径,options为可选参数。可选值有:

 {  
    method:       请求方法,  
    headers:     请求头信息,json或者Headers对象,其中包含请求头的各种信息Access-Control-Allow-Origin等,    
    body:        Blob、Buffersource、FormData、URLsearchParams说着USVString对象。并且GET或HEAD请求不能有body字段。    
    mode:        请求模式。值:cors、no-cors或者 same-origin  
    credentials: 是否自动发送cookie。值:omit、same-origin、include  
    cache:       请求的cache模式。值:default、no-store、reload、no-cache、force-cache、only-if-cached  
    redirect:    follow(自动重定向)、error(如果产生重定向将自动终止并且抛出一个错误)、manual(手动处理重定向)  
    referrer:    USVString类型的 no-referrer、client或者URL,默认client。  
    referrerPolicy: 指定referer HTTP头部的值。值:no-referrer、no-referrer-when-downgrade、origin、 
                     origin-when-cross-origin、unsafe-url 
    integrity:     包括请求的subresource integrity值
}  

Read More

meta标签集合

apple-mobile-web-app-status-bar-style

<meta name="apple-mobile-web-app-status-bar-style" content="default"> 

控制状态栏显示样式。content的值有:default、blcak、black-translucent等

apple-mobile-web-app-capable

<meta name="apple-mobile-web-app-capable" content="no" />  

删除默认的苹果工具栏和菜单栏

移动端页面适配相关

devicePixelRatio

设备无关像素比。即物理像素与设备独立像素的比值,其中物理像素指的是屏幕的分辨率,是硬件层面上像素的计数。例如iphone 6的为 1334 * 750
通过window.devicePixelRatio可以访问到设备的dpr

device independent pixels

设备独立像素。用于衡量元素大小的单位(类似于css?),属于度量上的计数

pixels per inch

每英寸像素数量。

webpack配置说明

之前使用webpack的时候总是不太明白webpack.config.js里面的参数是如何配置的,每个参数又有什么作用,所以也一直不敢随便更改
里面的配置,直接导致了对项目的不熟悉。因此趁现在有时间,遂对配置的字段的一一学习。

Read More

sublime插件配置

sublime插件

1、SideBarEnhancements配置

在key Bindings-user打开的文件粘贴下面配置:

    [ {
        "keys": ["f1"],
        "command": "side_bar_files_open_with",
        "args":
        {
            "application": "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe",
            "extensions": ".*",
            "paths": []
        }
    }]  

Read More

JS终止程序运行方法

1.return语句

js以函数的模式封装,在需要终止的地方以return语句返回

2.throw new error语句

在需要的地方以throw new error(“条件符合,程序终止”)结束程序。