js变量作用范围vs php变量范围

本文详细介绍了JavaScript和PHP中变量的作用域概念,包括全局与局部变量的区别、变量声明与赋值规则,并通过具体示例说明如何在不同作用域中正确使用变量。

二、Javascript变量
变量是用来存储信息的容器
规则:变量名区分大小写;变量名必须以字母或下划线开头
变量的声明和赋值:如果你给一个还没有声明的变量赋值,该变量会自动声明
2、
javascript的变量作用域
全局作用域:javascript可执行的所有范围都起作用
局部作用域:当前函数内起作用
举个例子:

(1)var a='ni hao';
function f(){
 alert(a);
 
 }
 f();//ni hao
(2)如果函数内部定义了和函数外部相同的变量,函数内部操作的是局部范围的变量,函数外部操作的全局范围的变量
 var v = 'global';
 function f1(){
  var v = 'function';
  alert(v);
 }
 f1();//function

(3) var a='ni hao';
 function f(){
   a='aaa';//给全局变量重新给变量赋值
  alert(a);
  }
 f();//aaa

(4)Javascript代码执行流程:
Javascript代码整体上是按照html文档流执行,但是也并不是完全按照,而是优先执行函数,这时函数内部的局部变量暂时设置为undefined
 var v = 'global';
 function f1(){
  alert(v);
  var v = 'function';
 }
 f1();//undefined


(5) var v = 1;
 function f1(){
  v += 1;
  alert(v);
 }
 f1();//2
 f1();//3

(6)var v1=100;
 function f1(){
 alert(v1);//100
  v1=200;//没有var代表全局,此时是引用全局变量v1,重新给他赋值200
 alert(v1);//此时显示200
 }
 f1();
alert(v1);//此时200


二、php中的变量范围
1、全局变量和局部变量,在php中全局变量是通过global 或者 $GLOBALS[]来声明的,和javascript完全不一样,建议使用 $GLOBALS[]声明全局变量
2、全局变量在整个php脚本运行的范围都能使用
3、$GLOBALS[]超级全局数组变量,所以它的下标(索引)就是变量名字
4、在函数内部使用全局范围的变量时,一定要先声明为全局变量
例:$x=1;
 $y=2;
 sum();
 function sum(){
  $c=$x+$y;
  echo $c;//0
  }
2、$x=1;
 $y=2;
 sum();
 function sum(){
  global $x;global $y;
  $c=$x+$y;
  echo $c;//3
  }

3、$GLOBALS['x']=1;
$GLOBALS['y']=2;
sum();
function sum(){
 $c=$GLOBALS['x']+$GLOBALS['y'];
 echo $c;//3
 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值