Javascript 删除数组中的最后一个逗号
我可以使用javascript/jquery自动删除最后一个逗号吗?Javascript 删除数组中的最后一个逗号,javascript,jquery,arrays,Javascript,Jquery,Arrays,我可以使用javascript/jquery自动删除最后一个逗号吗? 代码是由上传表单生成的,不是硬编码的 一些代码: <script> var images = [ 'image1.jpg', 'image2.jpg', 'image3.jpg', // Remove this comma ]; </script> 变量图像=[ 'image1.jpg', ‘image2.jpg’, 'image3.j
代码是由上传表单生成的,不是硬编码的 一些代码:
<script>
var images = [
'image1.jpg',
'image2.jpg',
'image3.jpg', // Remove this comma
];
</script>
变量图像=[
'image1.jpg',
‘image2.jpg’,
'image3.jpg',//删除此逗号
];
谢谢Ogni嗯。。。你无缘无故地被火烧上天,但答案似乎是“你不必担心那个逗号”
images.length
返回3和images.join(“,”)生成不包含尾随逗号的字符串。所以尽管我最初对“这是糟糕的语法”的回答似乎是错误的,但事实上,逗号似乎对你没有什么害处(除非我忽略了什么)。所以问题是,如果对话者对它完全不感兴趣,你为什么会关心它是否在那里
如果有一些旧的Javascript环境对这种语法不满意,那么应该避免使用它
如果这个javascript是由其他进程动态生成的,那么您应该修改您的问题,以指定发生这种情况的语言/环境,我相信我们将帮助您消除后面的逗号 如果(image==NaN | | image==null){逻辑,您可以优化
然后试试这个代码
<script type="text/javascript" language="javascript">
var images = [
'image1.jpg',
'image2.jpg',
'image3.jpg',
];
alert(images.length);
var image = images[images.length - 1];
if (image == NaN || image == null) {
images.pop();
}
alert(images.length);
</script>
变量图像=[
'image1.jpg',
‘image2.jpg’,
‘image3.jpg’,
];
警报(图像.长度);
var image=images[images.length-1];
如果(image==NaN | | image==null){
images.pop();
}
警报(图像.长度);
删除NaN
使用if(image==null){
仅我猜OP的问题在于,虽然它根据规范是有效的。旧IE没有正确运行此代码。另外,顺便说一句,你不能真正引用JS编译器。这就是为什么人们要求OP更具体地说明他的问题,因为听起来好像有更大的底层问题。(另外,我不是这个答案的反对者)@BenjaminGruenbaum,我使用编译器作为在运行时解释代码的所有工具。我承认这一区别,但我使用这个术语是不可知的,因为Javascript可以在很多地方运行,“编译器”似乎更合适。您觉得虚拟机、Interpeter或运行时更准确吗?可能是运行时、vm或Interpeter工作,因为不需要编译。不过,根据规范,我会使用有效和无效语法。ECMAScript版本3规范不允许在ECMAScript版本5规范允许的地方使用尾随逗号。另外,建议OP不支持OldIE可能不实际。修复…只是为了让你高兴:)谢谢。虽然这仍然不是OP问题的答案,但我们无法帮助他,直到他告诉我们实际问题在哪里(可能是构建上传表单的代码)让我们试着保留对该主题的评论。如果你有问题需要澄清,请将其作为评论发布。让我们保持评论不燃烧。