在javascript中使用php風(fēng)格的$globals
Jun 08, 2016 pm 05:32 PM在javascript中使用php風(fēng)格的$globals
JavaScript有隱含的全局變量。當(dāng)你不使用var來定義a = 1,而直接定義a=1時(shí),這個(gè)變量a將成為一個(gè)全局變量。有的認(rèn)為這是一個(gè)錯(cuò)誤,應(yīng)該避免全局變量,因?yàn)樗鼈兺鶗?huì)在意想不到的地方出錯(cuò),尤其是在項(xiàng)目參與人員很多的情況下。
在PHP當(dāng)中,默認(rèn)的是局部變量。如果你需要一個(gè)全局變量,那么你必須要將要聲明為全局變量的變量放到$globals這個(gè)數(shù)組中。
怎樣在javascripts中使用$globals呢?通過為全局公約在你的javascripts呢?在腳本文件頂部聲明:
$GLOBALS = {};
那么每一次當(dāng)你需要一個(gè)全局變量,您可以這樣做:
$GLOBALS[ '' myglob '' ] = 1 ; / /非常像PHP的樣式
或者如果你喜歡,也可以這樣:
$globals.myglob = 1 ;
這樣做的優(yōu)點(diǎn):
???? *全局變量容易識(shí)別(甚至從飛機(jī)都可以看見)
???? *如果變量不定義成$GLOBAL,那么它就是局部變量。如果變量沒有使用var,那么它將產(chǎn)生一個(gè)錯(cuò)誤
缺點(diǎn):
???? *這種使用方法,不是官方規(guī)定的,不強(qiáng)制使用,只是一項(xiàng)約定俗成的方法。
?
?
Stoyan Stefanov''s Blog: PHP-style $GLOBALS in Javascript?
Javascript has implied globals. When you skip the var in var a = 1; and go a = 1;, then a becomes a global variable. Some consider this an error in the language. Global variables should be avoided because they tend to overwrite each other in unexpected places, especially if the project grows in LOC and number of developers.
In PHP on the other hand, variables are local. If you need a global variable, then you have to have to be explicit about it using the $GLOBALS superglobal array.
So how about this: adopt the $GLOBALS convention in your JavaScripts? At the top of the script you go:
$GLOBALS = {};
Then every time you need a global variable, you do:
$GLOBALS[''myglob''] = 1; // very PHP-like
or if you prefer:
$GLOBALS.myglob = 1;
Benefits of the approach:
??global variables easy to spot (even from an aeroplane)
??if it''s not $GLOBAL, it''s meant to be local. If it''s missing the var, it''s an error
Drawback:
??It''s a convention, so it can only help, but not enforce any coding practices

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Screen brightness is an integral part of using modern computing devices, especially when you look at the screen for long periods of time. It helps you reduce eye strain, improve legibility, and view content easily and efficiently. However, depending on your settings, it can sometimes be difficult to manage brightness, especially on Windows 11 with the new UI changes. If you're having trouble adjusting brightness, here are all the ways to manage brightness on Windows 11. How to Change Brightness on Windows 11 [10 Ways Explained] Single monitor users can use the following methods to adjust brightness on Windows 11. This includes desktop systems using a single monitor as well as laptops. let's start. Method 1: Use the Action Center The Action Center is accessible

WebSocket and JavaScript: Key technologies for realizing real-time monitoring systems Introduction: With the rapid development of Internet technology, real-time monitoring systems have been widely used in various fields. One of the key technologies to achieve real-time monitoring is the combination of WebSocket and JavaScript. This article will introduce the application of WebSocket and JavaScript in real-time monitoring systems, give code examples, and explain their implementation principles in detail. 1. WebSocket technology

In iOS 17, Apple introduced several new privacy and security features to its mobile operating system, one of which is the ability to require two-step authentication for private browsing tabs in Safari. Here's how it works and how to turn it off. On an iPhone or iPad running iOS 17 or iPadOS 17, Apple's browser now requires Face ID/Touch ID authentication or a passcode if you have any Private Browsing tab open in Safari and then exit the session or app to access them again. In other words, if someone gets their hands on your iPhone or iPad while it's unlocked, they still won't be able to view your privacy without knowing your passcode

How to use WebSocket and JavaScript to implement an online speech recognition system Introduction: With the continuous development of technology, speech recognition technology has become an important part of the field of artificial intelligence. The online speech recognition system based on WebSocket and JavaScript has the characteristics of low latency, real-time and cross-platform, and has become a widely used solution. This article will introduce how to use WebSocket and JavaScript to implement an online speech recognition system.

Editor of Machine Power Report: Wu Xin The domestic version of the humanoid robot + large model team completed the operation task of complex flexible materials such as folding clothes for the first time. With the unveiling of Figure01, which integrates OpenAI's multi-modal large model, the related progress of domestic peers has been attracting attention. Just yesterday, UBTECH, China's "number one humanoid robot stock", released the first demo of the humanoid robot WalkerS that is deeply integrated with Baidu Wenxin's large model, showing some interesting new features. Now, WalkerS, blessed by Baidu Wenxin’s large model capabilities, looks like this. Like Figure01, WalkerS does not move around, but stands behind a desk to complete a series of tasks. It can follow human commands and fold clothes

Introduction to how to use JavaScript and WebSocket to implement a real-time online ordering system: With the popularity of the Internet and the advancement of technology, more and more restaurants have begun to provide online ordering services. In order to implement a real-time online ordering system, we can use JavaScript and WebSocket technology. WebSocket is a full-duplex communication protocol based on the TCP protocol, which can realize real-time two-way communication between the client and the server. In the real-time online ordering system, when the user selects dishes and places an order

JavaScript and WebSocket: Building an efficient real-time weather forecast system Introduction: Today, the accuracy of weather forecasts is of great significance to daily life and decision-making. As technology develops, we can provide more accurate and reliable weather forecasts by obtaining weather data in real time. In this article, we will learn how to use JavaScript and WebSocket technology to build an efficient real-time weather forecast system. This article will demonstrate the implementation process through specific code examples. We

How to use WebSocket and JavaScript to implement an online reservation system. In today's digital era, more and more businesses and services need to provide online reservation functions. It is crucial to implement an efficient and real-time online reservation system. This article will introduce how to use WebSocket and JavaScript to implement an online reservation system, and provide specific code examples. 1. What is WebSocket? WebSocket is a full-duplex method on a single TCP connection.
