国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

百度HR給的JS面試題

2024-04-27 15:13:19
字體:
來源:轉載
供稿:網友

說出以下代碼運行結果

var a = {n: 1}  var b = a;  a.x = a = {n: 2}  console.log(a.x);  console.log(b.x)  輸出:undefinedn:2解析:var a = {n: 1}    //定義變量 a為一個新對象,且這個新對象有一個值為 1的 n成員var b = a;    //定義變量 b,并且讓 b也引用變量 a的對象// 經過上面這兩句之后,變量 a 和 b 都引用了對象 {n:1}// 下面這句是問題的關鍵a.x = a = {n: 2}// a.x = 表示要給 a 引用的那個對象 {n:1} 的 x 成員賦值// 實際上,此時變量 b 也引用了這個對象 {n:1}// 此時,javaScript引擎首先給 {n:1} 添加一個空的 x 成員,即:{n:1,x:undefined}// 接下來要給{n:1,x:undefined}.x 賦的是什么值呢?// 要賦的值是 a = {n: 2}// 也就是先讓變量 a 引用一個新的對象 {n:2}// 然后再把 a 的新值賦給{n:1,x:undefined}.x// 所以原來的那個對象變成了 {n:1,x:{n:2}}// 由于變量 b 始終引用那個原來的對象,所以 b 的值是 {n:1,x:{n:2}}// 由于變量 a 被賦予了一個新的對象,所以 a 的值是 {n:2}// 這面這兩句是控制臺輸出console.log(a.x);    //變量 a 引用的對象是 {n:2},沒有 x 成員,所以輸出 undefinedconsole.log(b.x);    //變量 b引用的對象是{n:1,x:{n:2}},所以輸出 {n:2}

需要web前端課程工具和電子書,可以加22群120342833

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永城市| 龙南县| 波密县| 武宣县| 基隆市| 五华县| 巴楚县| 山阳县| 宾川县| 临沂市| 邹平县| 夏邑县| 依安县| 肃南| 平罗县| 奉节县| 德令哈市| 民县| 汕尾市| 南皮县| 惠州市| 丰台区| 汝阳县| 榆林市| 乌兰察布市| 泰和县| 珠海市| 巴东县| 营山县| 沿河| 阿坝| 阜平县| 台东县| 民乐县| 元阳县| 繁昌县| 上栗县| 松江区| 浙江省| 密山市| 通州区|