1. 程式人生 > >js 寫一個函式相容 不支援sort函式的的瀏覽器

js 寫一個函式相容 不支援sort函式的的瀏覽器

var mySort = function(fn){
if(typeof fn != 'function'){
fn = function(a,b){
return a-b;
}
}
for(var i=1;i<this.length;i++){
//var t = this[i-1];
var t = this[i];
var j = i-1;
while(j >= 0 && fn(this[j],t)> 0 ){
this[j+1] = this[j];
j--;
}
this[j+1] = t;

}
return this;

}
if(typeof Array.prototype.sorts!= 'fucntion'){
Array.prototype.sorts = mySort;
mySort = null;
}

相關推薦

js 一個函式相容 支援sort函式的的瀏覽器

var mySort = function(fn){if(typeof fn != 'function'){fn = function(a,b){return a-b;}}for(var i=1;i<this.length;i++){//var t = this[i-1];var t = this[i]

js函式引數支援預設值

如果js函式引數定義預設值,在IE下會報錯誤! js函式中有個儲存引數的陣列arguments,所有函式獲得的引數會被編譯器挨個儲存到這個陣列中。於是我們的js版支援引數預設值的函式可以通過另外一種變通的方法實現,修改上例: function func(string1

原生JS一個淡入淡出輪播圖

切換 splay get 自動 sele round pos 鼠標 name 任何網站主頁都離不開一個輪播圖,這是滾動播放新聞或者廣告或者內容的招牌,類型有很多,我們可以做一個淡入淡出的輪播圖。 首先分析,淡入淡出指的是沒有滑動效果,一張圖片消失的時候另一張圖片接著顯示出來

js 一個滾動條

兼容 absolut script name padding 位置 當前 sele osi <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8">

用node.js一個jenkins發版指令碼

背景 每次到網頁裡手動發版有點煩,寫個指令碼來提高開發效率。 CFG 在 jenkins 設定裡獲取 API TOKEN。 把 host 和賬號密碼拼接起來就可以通過鑑權。 const token = { user: '', password: '', } const host = 'jen

js一個秒錶

首先,先鋪好格式 <input type="text" name="" id="shuzi" value="00:00:00" /><br /> <input onclick="ks()" type="button" name="" id="kaishi" value

js一個秒表

tel 我們 java name func 取余 NPU 定時器1 cli 首先,先鋪好格式 <input type="text" name="" id="shuzi" value="00:00:00" /><br /> <input o

160-引數陣列-頂一個引數個數確定的函式

我們可以使用引數陣列定義一個引數個數不確定的函式。 static int Sum(int[] array)//如果一個函式定義了引數,那麼在呼叫這個函式的時候,一定要傳遞對應型別的引數,否則無法呼叫(編譯器編譯不通過) { int sum = 0;

JS一個最簡單的無縫輪播圖

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=d

js使用動態新增的方式傳函式引數能呼叫函式的問題

問題: 使用jquery動態的新增頁面元素,但是傳引數的時候不能傳中文,傳中文的時候函式調用不了出現錯誤. 原因: 網上查了一下,感覺是沒有加引號導致的 自己的情況: 但是自己是加了引號的,自己用的是在雙引號裡面加單引號. 舉個例子: $("#body").ap

如何一個簡單又通用的倒計時函式

關於倒計時,可能大家都遇到/寫過這樣的UI: 13:15:16。 嗯,一個最簡單的倒計時,就是這樣。 你會怎麼實現這個邏輯? 下面是我的經歷。 第一次遇到這樣的需求時,自然而然的一路平推,非常容易的就完成了。 第二次遇到類似的需求,產品對我說要改成這樣嬸兒的:1天 13:15:16。沒毛病,掄起鍵盤

利用vue.js一個購物車結算

利用vue.js寫一個購物車結算 筆者自學前端兩個月了,之前什麼輪播圖,自動載入的功能,寫了就忘了,還是太菜了。於是想開個部落格來記錄一下自己學習的歷程。第一篇,獻給這個購物車。大概下面那個效果把。 先搭建一個html結構。第一個匯入的js庫即vue

JS一個方法,傳入一個數組,返回該陣列的層深

現在我們有一個多維陣列,我們想得到該陣列的層深,即最大維度 如:var arr = [1, [4,[5,6,[7]]], [2,3]] = 0;返回4;那麼我們該怎麼做呢? 核心思想:遞迴,迴圈遍歷 // 這裡傳入兩個引數 // 引數一為陣列 // 引數二為初始陣列的層深 function fo(

MySQLdelete語句時支援表別名

今天寫程式碼時發現了下面一個比較奇怪的問題: 有下面的刪除資料的SQL delete from clinic_commission_info cci where cci.ID=6; 這個sql本來沒有問題,但是在MySQL中執行時會報錯 [SQL]delete from clinic

前端與編譯原理——用JS一個JS直譯器

說起編譯原理,印象往往只停留在本科時那些枯燥的課程和晦澀的概念。作為前端開發者,編譯原理似乎離我們很遠,對它的理解很可能僅僅侷限於“抽象語法樹(AST)”。但這僅僅是個開頭而已。編譯原理的使用,甚至能讓我們利用JS直接寫一個能執行JS程式碼的直譯器。 專案地址: https:/

使用Node.js一個簡單的api介面

引入Http模組 預設你已經安裝了Node.js Node當中內建了Http模組; 可以使用 var http= require("http"); 複製程式碼 引入http模組; Hello world 用Node.js實現一個HTTP伺服器程式非常簡單。我們實現一個最簡單的Web程式, 它對於所有請

教你從零開始一個雜湊表--雜湊函式

   在這一節,我們來編寫雜湊函式。 我們選擇的雜湊函式應該具有(以下特性): 把字串作為輸入,返回0到m(我們設計的桶陣列的長度)的數字; 對於一組平均的輸入返回分佈比較均勻的桶索引。如果我們的雜湊函式不是均勻分佈的,它可將會把較多的一些鍵值對放在某幾個桶中。這將會導致更

JS一個列表跑馬燈效果--基於touchslide.js

先放上效果圖: 類似於這樣的,在列表中迴圈新增背景樣式的跑馬燈效果。 準備引入JS外掛: <script type="text/javascript" src="xxx/2017mobile/j

js一個簡單的倒計時

一. 首先,我們要了解一下js對時間的基礎處理函式 函式名 功能 getYear() 獲取四位數的年份 getMonth() 獲取2位數的月數, 這個是從 0 開始的 , 注意 不是從1 開始的!!! getDate() 獲取2位數的日 數, 也是從1 開始的 getDay() 獲取表示 星

python子程序支援input函式

問題 寫多程序程式的時候,在子程序呼叫的函式內部呼叫了input函式,提示EOFError: EOF when reading a line,具體如下錯誤: 抽象出來的程式碼如下: #encoding=utf-8 from multiprocessing import Pool,P