变了啊
var k=2;
function explus(){
k=k+1;
alert(k);
}
explus();
alert(k); //弹出什么
var k=2;
function explus(){
k=k+1;
alert(k);
}
explus();
alert(k); //弹出什么
解决方案 »
- 正则匹配位置
- 有没有办法像typeof()那样,设计在执行时忽略参数是否定义的函数?
- 简单的js求助
- <object>元素如何使用事件?
- javascript为什么不能给多维数组赋值?
- javascript 中文简繁局部互换问题
- 在单击id="tbl"中任意一格或多格时,如何将id="mtbl"中的所有格(因单击id="tbl"中的onclick产生的背景色)全部清除掉?下面的例子只能清除
- 如何用js添加一个tr,tr中有多个td?
- 100分求救:div的滚动条如何滚动到相应的位置?
- 点击表格行,改变背景颜色
- 求高人进来帮忙看个问题..
- 请教个问题document.write( "<li>c的值是否是NaN:" + tc + "<br>" ); 这其中的<li>是什么意思啊。?跟<ul>
你要搞清楚我的问题!!!我问的是改变全局变量的方法,我只要改变全局变量!!vbscript中可以传值方式和传值方式byval、byref,javascript中要从函数改变全局变量用什么方法?
不过javascript中的就不知道了,我也是javascript的初学者
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
</head> <body>
<script type="text/javascript">
<!--
var k=2;
function explus(){
k=k+1;
alert(k);
}
explus();
alert(k); //弹出什么
//-->
</script>
</body>
</html>
把这段代码你去运行一下,绝对是:3
var k=2;
function cc(x){
x+=1;
alert("inner"+x);//3
}
cc(k);
alert("outer"+k);//2
</script>
首先不明白楼主的意思 不过看来看去说什么传值传址的 貌似你的函数什么都没传啊 此时改变的当然是全局的k了 你把k传进去之后再在外部调 传值不能改变原来的值 传进去的也只是原来值的副本 java和javascript应该是这样 其他的不知道了
本人菜鸟 不对勿喷
var k=[];
k[0]=2;
function cc(x){
x[0]+=1;
alert("inner"+x[0]);//3
}
cc(k);
alert("outer"+k[0]);//3
</script>
这样才类似与传址 基本类型的变量只会传值 引用变量才会传址 有些语言只有传值 但对引用变量也会起到传值的作用
还是那句话 本人菜鸟 不对勿喷