最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

千鋒教育JavaScript全套視頻教程(10天學會Js,前端javascrip

2023-07-12 16:41 作者:零悔  | 我要投稿

JavaScript 允許重復聲明變量,后聲明的覆蓋之前的

var a = 1;
var a = 'x';
console.log(a);
// 輸出 'x'

JavaScript 允許重復定義函數(shù)

JavaScript 沒有重載這個概念,它僅依據(jù)函數(shù)名來區(qū)分函數(shù)。

后定義的同名函數(shù)覆蓋之前的,與參數(shù)無關。

function test() {
    console.log("test");
}
test();     //輸出 "test arg0 + undefined"

function test(arg1) {
    console.log("test arg" + arguments.length + " + " + arg1);
}
test(1,2);  //輸出 "test arg2 + 1"

實參個數(shù)如果比形參少,那么剩下的默認賦值為?undefined,如果實參傳的比形參數(shù)量多,那么是全部都會被傳進去的,只不過沒有對應的形參可以引用(但可以用 arguments 來獲取剩下的參數(shù))。

function test(arg1) {
    for(var i=0; i<arguments.length; i++) {
        console.log(arguments[i]);
    }
}
test(1,2); //輸出 1 2

變量與函數(shù)重名的時候,變量生效

這涉及到了變量和函數(shù)的預解析:

  • 變量聲明會被頂置,函數(shù)聲明也會被頂置且比變量更先聲明。
  • 變量的聲明和賦值語句一起寫時,JS引擎在解析時,會將其拆成聲明和賦值2部分,聲明置頂,賦值保留在原來位置。
  • 聲明過的變量不會再重復聲明。
var a = 100;
function a() {
    return "function";
}
console.log(a);     //輸出 100
console.log(a());   
/*
報錯
Uncaught TypeError: a is not a function
    (anonymous function) @test.html:9
*/

JS 中有兩種函數(shù),一種是普通函數(shù),一種是函數(shù)對象。下面的這種就是“函數(shù)對象”,它實際上是聲明一個匿名函數(shù),然后將該函數(shù)的 init 方法賦值給該變量。

var a = 100;
var a = function() {
    return "function";
}
console.log(a);
/* 
輸出
function() {
    return "function";
}
*/
console.log(a());   //輸出 "function"

函數(shù)與內(nèi)部變量重名

定義普通函數(shù),即在 window 變量下,定義一個 key,它的名字為該函數(shù)名,值為該函數(shù)的地址。函數(shù)內(nèi)部的 this 指向 window 對象。

function a() {
    console.log(this);  //輸出 window{...}
    this.a = 1;         //即 window.a = 1,此時window下的function a已經(jīng)被該變量覆蓋了。
    var a = 5;          //下面的這幾個變量都是局部變量,僅在花括號范圍內(nèi)有效。  
    a = 10;
    var v = "value"
    return "function";
}
console.log(a);         //輸出 function a {...}
console.log(a());       //輸出 "function"
console.log(a);         //輸出 1
console.log(v);
/*
輸出
Uncaught ReferenceError: v is not defined
    (anonymous function) @ mycolor.html:15
*/


千鋒教育JavaScript全套視頻教程(10天學會Js,前端javascrip的評論 (共 條)

分享到微博請遵守國家法律
汶川县| 五寨县| 九龙县| 永定县| 安平县| 石狮市| 汶上县| 北宁市| 枣庄市| 扶沟县| 当雄县| 永宁县| 额济纳旗| 于都县| 上蔡县| 珠海市| 大渡口区| 米易县| 得荣县| 阳东县| 华容县| 老河口市| 镇平县| 东至县| 乌兰察布市| 炉霍县| 安康市| 镇康县| 安宁市| 南雄市| 涡阳县| 古蔺县| 长汀县| 鸡西市| 哈密市| 邵东县| 龙门县| 乌拉特中旗| 北海市| 伊金霍洛旗| 志丹县|