JavaScript常用方法小總結(jié)

JavaScript可以說是前端的基礎(chǔ)了,對后面框架的學(xué)習(xí)和深入發(fā)展都是很關(guān)鍵的买优,需要打好基礎(chǔ)上枕。

1咐熙、使用js實現(xiàn)toFixed函數(shù),設(shè)置參數(shù)來決定保留幾位小數(shù)

function formatFloat(src, pos)
{
    return Math.round(src*Math.pow(10, pos))/Math.pow(10, pos);
}

2姿骏、閉包和作用域

(1)糖声、

(function() {
    var val = 1;
    var json = {
        val: 10,
        dbl: function() {
            val *= 2;
        }
    };
    json.dbl();//這里調(diào)用的是val=1,如果這里是this.val則指向json內(nèi)部
    alert(json.val + val);//10+2=12;
}());
//彈出12

(2)、

window.val = 1;
var json = {
    val: 10,
    dbl: function() {
        this.val *= 2;
    }
};
json.dbl();//通過json調(diào)用dbl方法蘸泻,把json里面的val改為20
var dbl = json.dbl;//把dbl函數(shù)賦值給dbl
dbl();//全局作用域琉苇,調(diào)用dbl()函數(shù),把window的val改為2
json.dbl.call(window);//同上悦施,window的val改為4
alert(window.val + json.val);//4+20=24
//彈出24

(3)并扇、

var a=6;
setTimeout(function(){

    console.log(a);
    a=666;

},1000)
a=66;
//彈出66 66(相隔1S)

(4)、

var foo = 'Hello';
(function() {
    var bar = 'World';
    alert(foo + bar);//HelloWorld
})();
alert(foo + bar);//報錯抡诞,因為bar未定義

(5)穷蛹、

foo.x的值是什么?
var foo={n:1};
var bar=foo;
foo.x=foo={n:2};//undefined

(6)昼汗、

var test=(function(i){
  return function(){
    alert(i*2);
  }
 }(2));
 test(5);//結(jié)果為4(只輸出一個4)

(7)肴熏、

var a=1,b=2;
 (function(p){
    alert(a+p);//NAN
var c=arguments[0];
var a=2;
alert(c);//2
alert(a+c);//4
 })(b);

(8)、

function C1(name){
  if(name)
    this.name=name;//new C1().name沒有值顷窒,所以會去原型鏈上找蛙吏,結(jié)果是Tom
}
function C2(name){
  this.name=name;//name沒有定義,所以new C2().name的值存在鞋吉,但為undefined
}
function C3(name){
  this.name=name||'John';//new C3().name值為John
}
C1.prototype.name='Tom';
C2.prototype.name='Tom';
C3.prototype.name='Tom';
alert((new C1().name)+(new C2().name)+(new C3().name));//TomundefinedJohn

3鸦做、

alert(1&&2);//彈出2
alert(1||2);//彈出1

注意:
1、只要“||”前面為false谓着,無論“||”后面是true還是false泼诱,結(jié)果都返回“||”后面的值。
2赊锚、只要“||”前面為true治筒,無論“||”后面是true還是false,結(jié)果都返回“||”前面的值改抡。
3矢炼、只要“&&”前面是false,無論“&&”后面是true還是false阿纤,結(jié)果都將返“&&”前面的值;
4句灌、只要“&&”前面是true,無論“&&”后面是true還是false欠拾,結(jié)果都將返“&&”后面的值;

4胰锌、數(shù)組
已知道如下數(shù)組:
var arr = [[1,2,2],[3, 4, 5, 5],[6, 7, 8, 9,[11,12,[12,13,[14]]]],10];
編寫一個程序?qū)?shù)組扁平化去并除其中重復(fù)部分?jǐn)?shù)據(jù),最終得到一個升序且不重復(fù)的數(shù)組:
var res= [1,2,3,4,5,6,7,8,9,10,11,12,13,14]

/** 
 * 解析數(shù)組藐窄,然后去重资昧,排序 
 * @type Array 
 */  
  
//解析數(shù)組
var arr = [[1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14]]]], 10];  
var newArray = [];  
function getArray(array) {  
    array.forEach(function(e) {  
        if (typeof e === "object") {  
            getArray(e);  
        } else {  
            newArray.push(e);  
        }  
    });  
}  
getArray(arr);  
  
//去重 
Array.prototype.distinct = function() {  
    return this.reduce(function(newArray1, newValue) {  
        if (newArray1.indexOf(newValue) === -1)  
            newArray1.push(newValue);  
        return newArray1;  
    }, []);  
};  
newArray = newArray.distinct();  

//排序 
newArray.sort(function(a, b) {  
    return a - b;  
});  
console.log(newArray);  

未完待續(xù)。荆忍。格带。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末撤缴,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子叽唱,更是在濱河造成了極大的恐慌屈呕,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件棺亭,死亡現(xiàn)場離奇詭異虎眨,居然都是意外死亡,警方通過查閱死者的電腦和手機镶摘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門嗽桩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人凄敢,你說我怎么就攤上這事碌冶。” “怎么了贡未?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵种樱,是天一觀的道長。 經(jīng)常有香客問我俊卤,道長,這世上最難降的妖魔是什么害幅? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任消恍,我火速辦了婚禮,結(jié)果婚禮上以现,老公的妹妹穿的比我還像新娘狠怨。我一直安慰自己,他們只是感情好邑遏,可當(dāng)我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布佣赖。 她就那樣靜靜地躺著,像睡著了一般记盒。 火紅的嫁衣襯著肌膚如雪憎蛤。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天纪吮,我揣著相機與錄音俩檬,去河邊找鬼。 笑死碾盟,一個胖子當(dāng)著我的面吹牛棚辽,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播冰肴,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼屈藐,長吁一口氣:“原來是場噩夢啊……” “哼榔组!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起联逻,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤瓷患,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后遣妥,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體擅编,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年箫踩,在試婚紗的時候發(fā)現(xiàn)自己被綠了爱态。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡境钟,死狀恐怖锦担,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情慨削,我是刑警寧澤洞渔,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站缚态,受9級特大地震影響磁椒,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜玫芦,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一浆熔、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧桥帆,春花似錦医增、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至祈匙,卻和暖如春忽刽,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背菊卷。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工缔恳, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人洁闰。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓歉甚,卻偏偏與公主長得像,于是被迫代替她去往敵國和親扑眉。 傳聞我的和親對象是個殘疾皇子纸泄,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容

  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line)赖钞,也就是一...
    悟名先生閱讀 4,118評論 0 13
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)聘裁,斷路器雪营,智...
    卡卡羅2017閱讀 134,601評論 18 139
  • 第5章 引用類型(返回首頁) 本章內(nèi)容 使用對象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,212評論 0 4
  • 那年初三献起,即將迎來人生的第一次大考的一學(xué)年,因為你的英語不好镣陕,我的理科不好谴餐,你主動要求老師換的座位。 而后呆抑,我便知...
    沒錯是妹子閱讀 593評論 2 0
  • 小麥兜媽媽閱讀 121評論 0 0