變數作用域問題2(部分變數未聲明)

来源:http://www.cnblogs.com/paulirish/archive/2016/08/13/5768607.html
-Advertisement-
Play Games

例一 var x=10;全局變數(開闢空間)function outer(){x=20;//此處未聲明變數(未開闢空間),只給全局變數聲明瞭,此處賦值會把全局變數開闢的存儲空間的值替換掉(全局變數中的x替換成20)。function inner(){x=30;//此處未聲明變數(未開闢空間),只給全 ...


例一

var x=10;全局變數(開闢空間)
function outer(){
x=20;//此處未聲明變數(未開闢空間),只給全局變數聲明瞭,此處賦值會把全局變數開闢的存儲空間的值替換掉(全局變數中的x替換成20)。
function inner(){
x=30;//此處未聲明變數(未開闢空間),只給全局變數聲明瞭,此處賦值會把全局變數開闢的存儲空間的值替換掉(全局變數中的x替換成30)。
alert(x);//3、輸出x的值為30;
}
inner();//2.執行inner();
alert(x);//4、輸出x的值為30;
}
outer();//1.執行outer();
alert(x);//5、輸出x的值為30;
//結果:30 30 30

 

 

例二

var x=10;//全局變數(開闢空間1)
function outer(){
var x=20;//局部變數(開闢空間2
function innter(){
x=30;//局部變數(未開闢空間),開闢空間2的x值被賦值為30
alert(x);//3.彈出innter()的局部變數x=30;
}
innter();//2.執行函數innter()
alert(x);//4.彈出outer()的局部變數x=30;
}
outer();//1、執行函數outer();
alert(x);//5.彈出全局變數x=10;
//結果:30 30 10


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 對於設計模式, 從本質上說, 其最大的用途就是適應需求的變化. 因為有了設計模式,我們可以在設計階段就為未來可能發生的變化留下足夠的空間. 我們通過一個建造現代化養豬場的故事, 來討論一下設計模式與需要變化之間的關係. (一)設計模式最根本的意圖是適應需求的變化 一個機器人研發小組研製了一種能自動喂 ...
  • 回到目錄 關於Lind.DDD框架里API框架的技術點說明 講解:張占嶺 花名:倉儲大叔 主要框架:Lind.DDD 目錄 關於Lind.DDD.Authorization Lind.DDD為我們提交了強大的API校驗組件,只需要在全局或者要授權的controller上添加對應的過濾器即可完成授權的 ...
  • HTML(hyper text markup language):超文本標記語言 標記學習 1.標題標記:有六種標題<h1>-<h6> 2.列表:(無序列表;有序列表;定義列表)<ul>、<ol>、<dl> 3.段落<p> 4.預格式文本(按照源文件格式在瀏覽器中顯示)<pre> 5.分區塊文本<d ...
  • HTML(HyperText Markup Language,超文本標記語言)最早的HTML官方正式規範,是1995年IETF(Internet Engineering Task Force,網際網路工程任務組)發佈的HTML 2.0。W3C(World Wide Web Consortium,萬維網 ...
  • 一、angularJS簡介 1.什麼是 AngularJS? AngularJS 是一個 JavaScript 框架。它是一個以 JavaScript 編寫的庫。AngularJS是協助搭建單頁面工程的開源前端框架。它通過MVC模式使得開發與測試變得更容易。AngularJS 是以一個 JavaSc ...
  • 這兩天查了好多eval()的資料,結果還是很模糊,但是把自己知道的寫下來了! ...
  • Ajax 完整教程 第 1 頁 Ajax 簡介Ajax 由 HTML、JavaScript™ 技術、DHTML 和 DOM 組成,這一傑出的方法可以將笨拙的 Web 界面轉化成交互性的 Ajax 應用程式。本文的作者是一位 Ajax 專家,他演示了這些技術如何協同工作 —— 從總體概述到細節的討論 ...
  • HTML 什麼是瀏覽器什麼是伺服器? 可以顯示伺服器中的html文件。 可以讓用戶與這些文件交互。 特點: 處理請求。 必須保證二十四小時開機狀態。 請求協議:http協議: Url的組成:協議://伺服器的ip地址:埠號/請求頁面。 原來瀏覽器所做的事情是將伺服器響應回來的response進行從 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...