如何从此字符串中获取文件名?
"C:\Documents and Settings\Usuario\Escritorio\hello\test.txt"
Run Code Online (Sandbox Code Playgroud)
输出:
"test.txt"
Run Code Online (Sandbox Code Playgroud)
我真的试图在发布之前找到这个,但所有结果都被污染了,他们谈论从当前目录获取文件名(我必须只使用字符串)
我在浏览,我发现了这个:
var i, len;
for(i = 0, len = array.length; i < len; i++) {
//...
}
Run Code Online (Sandbox Code Playgroud)
我的第一个想法是:
是否正常循环(不缓存长度的循环)array.length每次检查?
我的表(在Chrome,FireFox和Opera上完美运行)无法在Internet Explorer上正确显示.
背景仍为白色!(我使用的是IE-8)
CSS代码:
/*My Table*/
.my_table{
border-collapse:collapse;
font:normal 14px sans-serif,tahoma,arial,verdana;
margin:5px 0;
}
.my_table th{
color:#fff;
background:#5E738A;
border:1px solid #3C5169;
text-align:center;
padding:4px 10px;
}
.my_table td{
color:#555;
border:1px solid #C1CAD4;
text-align:center;
padding:2px 5px;
}
.my_table tr:nth-child(even){
background:#E6EDF5;
}
.my_table tr:nth-child(odd){
background:#F0F5FA;
}
Run Code Online (Sandbox Code Playgroud) 我试图找到一种方法来为JavaScript上的每个字符拆分字符串,相当于String.ToCharArray()来自c#
稍后用逗号加入它们.
ex:"012345"分裂后 - > "['0','1','2','3','4','5']"加入后 - >"0,1,2,3,4,5"
到目前为止,我遇到的是循环每个字符并手动添加逗号(我认为这很慢)
我正在尝试创建一个removeAll()函数,它将删除具有该特定值(而不是索引)的数组的所有元素.
当我们对循环进行任何更改时,棘手的部分就出现了,索引往往会移动(使得它很难使它像我们想要的那样工作),并且每次进行更改时重新启动循环在大数组上都是非常低效的.
到目前为止,我编写了自己的arr.indexOf函数(对于较旧的IE支持),它看起来像这样:
function arrFind(val, arr) {
for (var i = 0, len = arr.length, rtn = -1; i < len; i++) {
if (arr[i] === val) {
return i;
}
}
return -1;
}
Run Code Online (Sandbox Code Playgroud)
删除这样的元素很容易:
var myarray = [0, 1, 2, 3, 4];
var tofind = 2;
var stored_index = arrFind(tofind, myarray);
if (stored_index != -1) {
myarray.splice(stored_index, 1);
}
alert(myarray.join(",")); //0,1,3,4
Run Code Online (Sandbox Code Playgroud)
但是,正如我之前指出的那样,在循环时执行此操作时,我们遇到了麻烦.
有关如何在循环中正确删除数组项的任何想法?
continue;停止循环并移动到下一个循环break;停止循环并移动到循环结束是不是有某种start;停止循环并移动到循环的开头?
我知道通过修改值来轻松实现所有这三个操作i,但我总是试图寻找已经内置的函数.
我在我的项目中使用下划线,但现在我想使用underscore.string扩展它
我阅读了他们的文档,如果我不采取他们所说的额外措施,我似乎可能会遇到问题:
var _ = require('underscore');
// Import Underscore.string to separate object, because there are conflict functions (include, reverse, contains)
_.str = require('underscore.string');
// Mix in non-conflict functions to Underscore namespace if you want
_.mixin(_.str.exports());
// All functions, include conflict, will be available through _.str object
_.str.include('Underscore.string', 'string'); // => true
Run Code Online (Sandbox Code Playgroud)
但是,我不知道如何遵循这些步骤,我需要帮助了解使用它们的步骤,并且使用它们没有任何问题.
到目前为止,我已经这样做了:
<script src="underscore-min.js" type="text/javascript"></script>
<script src="underscore.string.min.js" type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)
另外一个相关的问题,当我设法与两者合作时,我必须始终使用_.str,还是只使用冲突的功能?
是否可以根据字体可用性设置不同的字体大小?
目前我的问题是Verdana太大了,如果用户没有Verdana安装,我最终会得到一个非常小的字体大小
有没有办法将字体(Verdana在我的情况下)设置为13px,如果用户没有安装该字体,请尝试使用其他字体(Arial例如)但字体大小更大?
笔记:
我编写了这个绑定方法,并且在我的preventDefault()方法中遇到问题在IE中工作.回调线永远不会执行.有人可以提供帮助吗?谢谢!
var preventDefault = function (event) {
if (window.event) { window.event.returnValue = false; }
else if (event.preventDefault) { event.preventDefault(); }
else { event.returnValue = false; }
};
var bindEvent = function (ele, type, cb) {
if (window.addEventListener) {
ele.addEventListener(type, cb, false);
} else if (window.attachEvent) {
ele.attachEvent('on' + type, function () {
event.preventDefault = function () {
preventDefault(event);
}.call(this);
cb.call(ele, event); //this does not execute
});
}
};
Run Code Online (Sandbox Code Playgroud) javascript ×7
arrays ×2
css ×2
string ×2
batch-file ×1
bind ×1
css-tables ×1
css3 ×1
filenames ×1
font-size ×1
loops ×1
parseint ×1