摘要:扒文,不謝,今天在回答了一個(gè)關(guān)于定義變量時(shí)使用關(guān)鍵字與否的區(qū)別,總結(jié)回顧一下。在函數(shù)作用域內(nèi)加定義的變量是局部變量,不加定義的就成了全局變量。使用定義變量還會(huì)提升變量聲明,即使用定義不使用定義這就是使用定義的變量的聲明提前。
@krew http://webbought.github.io/
扒文,不謝,O(∩_∩)O~
今天在sf回答了一個(gè)關(guān)于定義變量時(shí)使用關(guān)鍵字var與否的區(qū)別,總結(jié)回顧一下。
1.在函數(shù)作用域內(nèi) 加var定義的變量是局部變量,不加var定義的就成了全局變量。
使用var定義:
···var a = "hello World"; function bb(){ var a = "hello Bill"; console.log(a); } bb() //"hello Bill" console.log(a); //"hello world"
不使用var定義:
var a = "hello World"; function bb(){ a = "hello Bill"; console.log(a); } bb() //"hello Bill" console.log(a); //"hello Bill"
2.在全局作用域下,使用var定義的變量不可以delete,沒(méi)有var 定義的變量可以delete.也就說(shuō)明隱含全局變量嚴(yán)格來(lái)說(shuō)不是真正的變量,而是全局對(duì)象的屬性,因?yàn)閷傩钥梢酝ㄟ^(guò)delete刪除,而變量不可以。
3.使用var定義變量還會(huì)提升變量聲明,即
使用var定義:
function hh(){ console.log(a); var a = "hello world"; } hh() //undefined
不使用var定義:
function hh(){ console.log(a); a = "hello world"; } hh() //"a is not defined"
這就是使用var定義的變量的聲明提前。
4.在ES5的"use strict"模式下,如果變量沒(méi)有使用var定義,就會(huì)報(bào)錯(cuò)。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/87595.html
摘要:前段時(shí)間回答了一個(gè)關(guān)于定義變量時(shí)使用關(guān)鍵字與否的區(qū)別,總結(jié)回顧一下。在函數(shù)作用域內(nèi)加定義的變量是局部變量,不加定義的就成了全局變量。使用定義變量還會(huì)提升變量聲明,即使用定義不使用定義這就是使用定義的變量的聲明提前。 前段時(shí)間回答了一個(gè)關(guān)于定義變量時(shí)使用關(guān)鍵字var與否的區(qū)別,總結(jié)回顧一下。 1.在函數(shù)作用域內(nèi) 加var定義的變量是局部變量,不加var定義的就成了全局變量。使用var定義...
摘要:一寫(xiě)在前面最近重讀高級(jí)程序設(shè)計(jì),總結(jié)下來(lái),查漏補(bǔ)缺。但這種影響是單向的修改命名參數(shù)不會(huì)改變中對(duì)應(yīng)的值。這是因?yàn)閷?duì)象的長(zhǎng)度是由傳入的參數(shù)個(gè)數(shù)決定的,不是由定義函數(shù)時(shí)的命名參數(shù)的個(gè)數(shù)決定的。實(shí)際改變會(huì)同步,改變也會(huì)同步 一、寫(xiě)在前面 最近重讀《JavaScript高級(jí)程序設(shè)計(jì)》,總結(jié)下來(lái),查漏補(bǔ)缺。 二、JS簡(jiǎn)介 2.1 JS組成 ECMAscript:以ECMA-262為基礎(chǔ)的語(yǔ)言,由...
摘要:的基礎(chǔ)語(yǔ)法的語(yǔ)法是區(qū)分大小寫(xiě)的注意在中是區(qū)分大小寫(xiě)的變量名稱不能是中文代碼示例一花一世界控制臺(tái)調(diào)用效果圖語(yǔ)法中的空格與換行注意并不是的語(yǔ)法內(nèi)容可有可無(wú)的建議使用因?yàn)檫@樣會(huì)使代碼看的更清晰利于閱讀代碼示例代碼一花一世界中的分號(hào)可選項(xiàng)語(yǔ)法并 JavaScript的基礎(chǔ)語(yǔ)法: JavaScript的語(yǔ)法是區(qū)分大小寫(xiě)的 注意: 在JavaScript中是區(qū)分大小寫(xiě)的 變量名稱不能是中文 代...
摘要:請(qǐng)解釋事件代理事件代理也稱為事件委托,利用了事件冒泡。同源指的是協(xié)議域名端口相同,同源策略是一種安全協(xié)議。目的同源策略保證了用戶的信息安全,瀏覽器打開(kāi)多個(gè)站點(diǎn)時(shí),互相之間不能利用獲取對(duì)方站點(diǎn)的敏感信息。 請(qǐng)解釋事件代理(event delegation) 事件代理也稱為事件委托,利用了事件冒泡。例如: item1 item2 item3 當(dāng)頁(yè)面li增多時(shí)單...
摘要:目前,和基本是同義的,只有一些細(xì)微的差別。表示沒(méi)有對(duì)象,即該處不應(yīng)該有值。作為對(duì)象原型鏈的終點(diǎn)。五新增持續(xù)更新中一般是意外情況產(chǎn)生的,則是有意為對(duì)象賦值來(lái)說(shuō)明這是一個(gè)空的對(duì)象的返回值是的類(lèi)型是 摘自阮一峰博客,另附自己的理解分析。 大多數(shù)計(jì)算機(jī)語(yǔ)言,有且僅有一個(gè)表示無(wú)的值,比如,C語(yǔ)言的NULL,Java語(yǔ)言的null,Python語(yǔ)言的None,Ruby語(yǔ)言的nil。有點(diǎn)奇怪的是,J...
閱讀 3986·2021-11-24 09:38
閱讀 3193·2021-11-17 09:33
閱讀 3945·2021-11-10 11:48
閱讀 1296·2021-10-14 09:48
閱讀 3192·2019-08-30 13:14
閱讀 2604·2019-08-29 18:37
閱讀 3479·2019-08-29 12:38
閱讀 1477·2019-08-29 12:30