【赞】没想到JsIDE如此先进
jside吧
全部回复
仅看楼主
level 14
Cary__Zheng 楼主
本来以为没有严格模式的,今天测试了下,有!
大赞[真棒]
2016年01月31日 13点01分 1
level 14
Cary__Zheng 楼主
2L
2016年01月31日 13点01分 2
level 14
Cary__Zheng 楼主
本吧居然没人。。
2016年02月01日 15点02分 3
level 14
Cary__Zheng 楼主
那我直接说了吧[喷],第五版ECMA-262规定了严格(strict)模式,严格模式下原先许多正常执行、默认失败的脚本会直接抛出错误!
2016年02月01日 15点02分 4
level 14
Cary__Zheng 楼主
@初始状态0 就是这些加密
2016年02月02日 07点02分 5
level 6
use strict是什么?变量内容吗?
2016年02月02日 13点02分 6
不是,是一个字符串,能够识别严格模式的程序检测到会激活严格模式
2016年02月02日 13点02分
@Cary__Zheng 严格模式是什么
2016年02月02日 13点02分
2016年02月02日 13点02分
level 6
use strict前面是不是还差什么啊
2016年02月02日 13点02分 7
level 6
另外新人一枚,楼主莫见怪
2016年02月02日 13点02分 8
level 6
@初始状态0 可以再次申请吧头像吗最近特别松
2016年02月02日 13点02分 9
level 6
楼主,能为我详细解释一下这串代码吗?
function void1(str)
{
print("Hello");
//参数可以直接使用
print(str);
print("world");
}
function void2(str1,str2)
{
//参数可以直接使用
print(str1);
print("Hello");
//参数可以直接使用
print(str2);
print("world");
}
str参数表示什么?
2016年02月03日 18点02分 10
就是在函数里的变量,当你调用void1()时,括号里填写的数据的值会按顺序传给这些函数里的变量(参数)。也就是当我调用void1("a","b");时,str是字符串a,因为void1没有第二个参数,字符串b则不会被用到
2016年02月04日 03点02分
而如果调用void2("a","b"),str1就等于字符串a,str2就等于字符串b
2016年02月04日 03点02分
新定义的函数void(str);当你调用它时,会print("Hello");然后print(str);再print("World");
2016年02月04日 03点02分
@Cary__Zheng 第三条回复中不是void是void1,写错了
2016年02月04日 03点02分
level 6
另外楼主看这个函数
function vo(str)
{
print(str);
if(str=="")
{
return;
print("我永远不会执行");
}
print("函数继续执行");
}
vo("");
print("-----");
vo("*");
根据我的理解,自定义函数vo的函数体是
{
print(str);
if(str=="")
{
return;
print("我永远不会执行");
}
print("函数继续执行");
}
用人类的语言说,就是
输出str,如果参数为" ",那么结束函数。不会显示“我永远不会执行,函数继续执行”对吧
然后这里调用函数
vo("");第一个,先输出" ",然后符合str= ,这时候return启用,直接结束函数。所以第一个模拟器上只会显示“ ”(空格)
print("-----");第二个,str= -----,输出 -----,然后因为str!=" ",所以不会启用return,if语句结束,print输出下面的“函数继续执行”,而不输出if语句里的“我永远不会执行”,这样第二个调用结束屏幕上只有
-----
函数继续执行
vo("*");最后这个,同上面 -----的一样,最后显示
*
函数继续执行
也就是说,无论如何“我永远不会执行”都不会显示。
综合输出的就是
“ ”(空格)
-----
函数继续执行
*
函数继续执行
而模拟器上的却是这样
所以我的问题就是,我哪里理解错了吗?楼主大神求解!
2016年02月04日 07点02分 11
连我的广告都没戳。。我还是安静着吧
2016年02月04日 10点02分
@Cary__Zheng [滑稽]我知道,你的个人贴吧
2016年02月04日 10点02分
@Cary__Zheng [阴险]快帮我看看我的见解
2016年02月04日 15点02分
是这样的:vo("");表示参数是空字符串,当它执行时,先输出了参数(如模拟器第一行),然后判断参数是否为空字符串,正确,return直接结束了函数运行。print("--------------");输出一些减号(如模拟器第二行)。vo("*");先输出了星号。(字数满了)
2016年02月04日 15点02分
level 6
模拟器是这样
2016年02月04日 07点02分 12
1