摘要:可以由構造函數來訪問到每個對象的屬性指向自身構造函數的屬性是原型對象的屬性,指向這個原型對象所對應的構造函數。
1、delete引用文字
delete不可以刪除變量 只可以刪除變量上的屬性
2、有名函數被賦值為一個變量再訪問這個 名(有名函數的名)就會報錯
var f=function g() { return 1 } console(g())
會報錯 g沒有被定義
3、函數的this指向誰 決定于是誰在調用它var foo={ baz:1, bar:function () { return this.baz; } }; (function () { console.log(typeof arguments[0]()) //undefined })(foo.bar)4、分組選擇符() 值是括號里邊的最后一個
var a=(1,3,4); console.log(a) //45、new一個構造函數 會執行的操作
一個沒有返回值的函數在new進行構造調用以后 會返回一個如下所說的對象
普通調用這個函數 則沒有返回值
var foo=function () { console.log(11) } var foo1=new foo(); var foo2=foo(); console.log(foo1,foo2) //foo undefined
在使用new 對構造函數進行調用的時候 會發生如下幾件事情
(1)首先會生成一個空對象
(2)將新建對象的this指針指到新建的對象上
(3)如果構造函數沒有返回值 讓這個對象的原型指向構造函數的prototype
如果真個個對象有返回值 讓這個對象指向了返回的對象
所以盡量不要在構造函數中返回什么東西
6、函數的形參和是實參的個數函數.length 可以得到函數的形參的個數
函數中arguments.length可以得到函數實際參數的個數
去尋找var 定義的變量 當就近沒有找到的話 就會查找外層
同時變量聲明的過程是 var a=2; 1、變量聲明提前 2、再賦值
var a=10; function foo() { console.log(a); var a=20; } foo(); //undefined
以上代碼和下面的代碼是等價的
var a=10; function foo() { var a; console.log(a); a=20; } foo(); //undefined8、js中參數傳遞
普通類型是值傳遞 引用類型是地址傳遞
普通類型 相當于將實參賦值給了形參 實參沒有任何的改變
var a=10; function foo(a) { a+=10; } foo(a); console.log(a) //10
引用類型 將實參的引用類型的地址 賦值給形參
var a=[1,3,4,5,6]; function foo(a) { a.push(1,3) } foo(a); console.log(a) //[1, 3, 4, 5, 6, 1, 3]9 利用正則表達式的子項 和字符串的replace 函數的第二個參數為函數的功能
實現將中畫線的字符串 轉化為駝峰式命名的字符串
function aa(str) { var partten=/-(w)/g; return str.replace(partten,function ($0,$1) { console.log($0,$1) //會輸出 -c c 和-s s return $1.toUpperCase() }) } console.log(aa("background-color-style"))10 用遞歸來代替循環
不使用循環 創建數組
function test(n) { var arr=[]; return (function () { arr.unshift(n); n--; if(n!=0){ arguments.callee() } return arr; })() } console.log(test(5))
用str的replace 來實現循環
function test(n) { var arr=[]; arr.length=n+1; var str=""; str=arr.join("a"); var arr2=[]; str.replace(/a/g,function () { arr2.unshift(n--) }) return arr2; } console.log(test(5)) //[1,2,3,4,5]11 利用三目運算 switch 來代替if else 12 原型鏈 對象 構造函數的關系
原型:構造函數在創建的過程中,系統自動創建出來與構造函數相關聯的一個空的對象。可以由構造函數.prototype來訪問到
每個對象的__proto__屬性指向自身構造函數的prototype;
constructor屬性是原型對象的屬性,指向這個原型對象所對應的構造函數。
每一個原型對象都有consrtructor屬性
原型鏈:每一個對象都有自己的原型對象,原型對象本身也是對象,原型對象也有自己的原型對象,這樣就形成了一個鏈式結構,叫做原型鏈。
例如:p對象----->Person.prototype------->Object.prototype--------->null 構成原型鏈
element.onclick
W3C下使用element.addEveneListener("click",function(),false[在冒泡階段執行函數])
IE下 使用element.attachEvent("click",function(){}) 這個函數中的this指向的是window而不是element
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/88634.html
摘要:常見面試題實現垂直水平居中前言面試中常常被問到,如何使用來實現一個元素的垂直水平方向上居中,特別是筆試題的時候,這道題目的出現頻率還是比較高的,當然,在我們的生活中,也常常會有垂直水平居中的需求。 常見面試題—css實現垂直水平居中 前言 面試中常常被問到,如何使用css來實現一個元素的垂直水平方向上居中,特別是筆試題的時候,這道題目的出現頻率還是比較高的,當然,在我們的生活中,也常常...
摘要:容器自動完成裝載,默認的方式是這部分重點在常用模塊的使用以及的底層實現原理。 對于那些想面試高級 Java 崗位的同學來說,除了算法屬于比較「天方夜譚」的題目外,剩下針對實際工作的題目就屬于真正的本事了,熱門技術的細節和難點成為了主要考察的內容。 這里說「天方夜譚」并不是說算法沒用,不切實際,而是想說算法平時其實很少用到,甚至面試官都對自己出的算法題一知半解。 這里總結打磨了 70 道...
摘要:今天總結一下中常見的面試題與的區別比較變量內存地址和值是否相等,僅僅比較變量的值是否相等需要注意當變量的值較小時時,的值是,這是由于定義變量時底層的實現決定的,例如小整數對象池兩個變量的值就會相同,導致的值為。 今天總結一下python中常見的面試題: 1.is與==的區別is比較變量內存地址和值是否相等,==僅僅比較變量的值是否相等需要注意:當變量的值較小時(a=1, b=1時,a ...
摘要:內部類的作用成員內部類成員內部類可以無條件訪問外部類的所有成員屬性和成員方法包括成員和靜態成員。匿名內部類匿名內部類就是沒有名字的內部類靜態內部類指被聲明為的內部類,他可以不依賴內部類而實例,而通常的內部類需要實例化外部類,從而實例化。 大部分開發者進入公司,一個必備的環節就是面試,只有通過面試,才能知道求職者是否符合公司的要求,也只有通過面試,求職者才能有幸進入到企業里工作,那么怎么...
閱讀 2077·2023-04-25 21:11
閱讀 2966·2021-09-30 09:47
閱讀 2277·2021-09-24 09:48
閱讀 4434·2021-08-23 09:43
閱讀 899·2019-08-30 15:54
閱讀 566·2019-08-28 18:01
閱讀 1402·2019-08-27 10:55
閱讀 591·2019-08-27 10:55