Array.shift()并在一行中修改值
Array.shift() and modify value in a single line?
这段Javascript代码从文件列表中删除了第一个文件名,然后删除了它的扩展名:
var fileNoExt = filelist.shift();
fileNoExt = fileNoExt.substr(0, fileNoExt.lastIndexOf('.'));
我很好奇——有可能把这段代码变成一行代码吗?
如何使用正则表达式?
如果您想在.
之后强制一个扩展,请使用
var fileNoExt = filelist.shift().replace(/'.[^.]+$/, '');
否则,使用
var fileNoExt = filelist.shift().replace(/'.[^.]*$/, '');
第二个匹配my_crazy_file.
和my_crazy_file.extension
,而第一个只匹配my_crazy_file.extension
。
下面是一行代码:
var filelist = ['file.name.ext', 'some.another.string']
filelist.shift().split('.').slice(0, -1).join('.') // 'file.name'
"有可能把这段代码变成一行代码吗?"
是的,
var fileNoExt = filelist[0].substr(0, filelist.shift().lastIndexOf('.'));
但是为什么呢?两行就更清楚了
相关文章:
- 在Safari执行javascript之前对其进行修改
- 拆分文本以每隔n个字符添加一行新行,并注意空格
- 动态插入的表:JQuery未检测到最后一行
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 在终端中运行 JavaScript 时(使用 rhino),如何使用 print() 函数在一行中打印
- 用Javascript修改内部标记的CSS规则
- 如何在Angular UI网格中选择下一行
- 通过单击动态加载的表中同一行的另一个字段来更新一行的字段
- 绑定Range输入以修改样式
- 可以从Chrome扩展修改窗口对象吗
- jQuery滚动器插件修改
- 将函数从onclick修改为onload
- jQuery UI自动完成-修改问题
- Javascript日期修改
- 如何通过JQuery修改样式属性
- 使用treewalker修改表
- Jquery幻灯片以一行左侧的图像开始,但我希望它从右端开始
- Array.shift()并在一行中修改值
- 根据另一行的值修改一行中的值
- 将表行克隆到另一行并修改HTML