Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我的string.split()调用在internet explorer中失败?_Javascript - Fatal编程技术网

Javascript 为什么我的string.split()调用在internet explorer中失败?

Javascript 为什么我的string.split()调用在internet explorer中失败?,javascript,Javascript,这在chrome和firefox中非常有效,在InternetExplorer中也应该非常有效 事实上,如果我手动输入一个字符串,而不是从提示符中获取它,那么它就可以完美地工作。唯一的问题是当我使用'prompt'接收字符串时,就我所知,我从中得到的值是一个字符串,就像其他任何字符串一样 value=prompt("extract","youtube code here"); el=document.getElementById('textarea'); //matche

这在chrome和firefox中非常有效,在InternetExplorer中也应该非常有效

事实上,如果我手动输入一个字符串,而不是从提示符中获取它,那么它就可以完美地工作。唯一的问题是当我使用'prompt'接收字符串时,就我所知,我从中得到的值是一个字符串,就像其他任何字符串一样

    value=prompt("extract","youtube code here");
    el=document.getElementById('textarea');
    //matches=value.match(/.*<embed src=(^>*)>.*/gi);
    item=value.split('<embed src=')[1];
    closeTag=item.indexOf('>');
    if(closeTag>-1)
    {
        item=item.substring(0,closeTag);
    }
    alert(item);
    el.value+=item;
value=prompt(“提取”,“youtube代码在此”);
el=document.getElementById('textarea');
//匹配=值。匹配(/.*)>.*/gi);
项目=价值。分割(“”);
如果(关闭标签>-1)
{
item=item.子字符串(0,closeTag);
}
警报(项目);
el.值+=项目;

声明变量,在IE7中它似乎对我有用:

var value=prompt("extract","youtube code here");
var el=document.getElementById('textarea');
//matches=value.match(/.*<embed src=(^>*)>.*/gi);
var item=value.split('<embed src=')[1];
var closeTag=item.indexOf('>');
if(closeTag>-1)
{
    item=item.substring(0,closeTag);
}
alert(item);
el.value+=item;
var value=prompt(“提取”,“此处为youtube代码”);
var el=document.getElementById('textarea');
//匹配=值。匹配(/.*)>.*/gi);
var项目=价值分割(“”);
如果(关闭标签>-1)
{
item=item.子字符串(0,closeTag);
}
警报(项目);
el.值+=项目;

加载后读取源代码,是否看到“嵌入”被传递,或“对象”?与?我建议
var startTag=value.indexOf(“”,startTag)此代码永远不会失败(如果没有提供拆分参数,代码将失败,即
此外,在拆分之前,在那里抛出一个alert/console.log以查看值…我进入ie调试器并使用了一些alert;alert(值的类型)显示值应该是一个字符串,调试器没有将其命名为字符串,但它看起来确实是一个字符串。好吧,这是一个非常简单的修复方法…研究它使我发现了我对javascript理解中的一个关键缺陷。我以为添加var是一个全局变量,结果却是相反的…呜呜!