javascript函数全局变量

函数:
全局变量和局部变量
全局变量在函数外面声明的变量
局部变量在函数内部声明的变量
<script>
var test=10;
function demo()
{
test+=20;
}
demo();
demo();
alert(test);
</script>
弹出的结果是50

对比:
<?php
$test=10;
finction demo()
{
global $test;
$test+=20;
}
demo();
demo();
echo $rest;
?>
输出的结果10,全局变量是10,要想输出50加入global $test;

正常声明,不赋值,没有默认值,输出显示undefined没有声明。如果没声明变量需要有默认值:输出默认值a=1,b=2,c=3
<script>
function table(a,b,c)
{
    if(typeof(a)=="undefined")
        a=1;
    if(typeof(b)=="undefined")
        b=2;
    if(typeof(c)=="undefined")
        c=3;
alert(a+"----"+b+"----"+c+"----");
}
table();
</script>

或者:

<script>
function table(a,b,c)
{
    a=a?a:1;
        b=b?ba:1;
        c=c?c:1;
alert(a+"----"+b+"----"+c+"----");
}
table();
</script>

实参多于形参,取其中某一个参数:
<script>
function table()
{
alert(arguments.length);
alert(arguments[2]);
}
table(1,2,3,4,5,6,7,8);
windows.table(1,2,3,4,5,6,7,8);
</script>
arguments.length是计算实参的长度
arguments[2]是取下标为2也就是第三个参数3


javascrpt是基于对象的,不是面向对象的,没有封装,寄存,多态,所有的都是对象的使用形式。
默认加入windows对象里,输出windows.table();
document.write();向网页文档输出

显示乱码,把中文变成乱码:
var str="哈哈哈";
alert(str);
document.write(escape(str));

显示乱码,把乱码变成中文:
<script>
var str="%u54C8%u54C8%u54C8%u54C8%u54C8%u54C8%u54C8%u54C8 ";
alert(str);
document.write(unescape(str));
</scritpt>

把字符串变成整数:
<script>
var f="a12.954";
if(!isNaN(f))
    {
var i=parseInt(f);
}
else
{
var i=0;
}
alert(i);
</script>

把整数转换成浮点数:
<script>
var f="1.23";
if(!isNaN(f))
    {
var i=parseFloat(f);
}
else
{
var i=0;
}
alert(i);
</script>

编译执行字符串:
<script>
var b="23.45";
var str='var f="'+b+'";if(!isNaN(f)){var i=parseFloat(f);}else{var i=0;}'
eval(str);
alert(i);
</script>

全局变量:
escape();把中文变乱码
unescape();把乱码变中文
parseInt();把字符串转化成整型
parseFloat();把字符串转化成浮点型
isNaN();检查参数是不是数字,如果不是数字返回true,是就返回false。
isFinite();是否是无穷大,如果是有限数字,返回true,如果不是数字或者是正,负无穷大的数,返回false。
eval();编译字符串里的代码。

猜你喜欢

转载自blog.csdn.net/abenazhan/article/details/77116058
今日推荐