84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
看到的教程或者网上文章文档,都说slice(start,[end])其中参数start必须,但是测试发现不指定start也可以,是有新的标准么?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
看文档请认准MDN牌,M~D~N,我看行~
If begin is omitted, slice begins from index 0. -Array.prototype.slice()
请看MDN文档~
If begin is omitted, slice begins from index 0.
楼上说的是mdn上Array.prototyep.slice, 可能楼主指的是 msdn 上 array.slice. 是一个IE类浏览器和W3C类标准浏览器的在js脚本方面的差异。
不要在乎现象,而要找到问题的本质。
啊哈! 喜欢扣源代码的来了v8 builtins.cc中
BUILTIN(ArraySlice) { //.... ASSERT(len >= 0); int n_arguments = args.length() - 1; // Note carefully choosen defaults---if argument is missing, // it's undefined which gets converted to 0 for relative_start // and to len for relative_end. int relative_start = 0; //<-- 看这里看这里 int relative_end = len; if (n_arguments > 0) { Object* arg1 = args[1]; if (arg1->IsSmi()) { relative_start = Smi::cast(arg1)->value(); } else if (!arg1->IsUndefined()) { return CallJsBuiltin(isolate, "ArraySlice", args); } if (n_arguments > 1) { Object* arg2 = args[2]; if (arg2->IsSmi()) { relative_end = Smi::cast(arg2)->value(); } else if (!arg2->IsUndefined()) { return CallJsBuiltin(isolate, "ArraySlice", args); } } } //.... }
看文档请认准MDN牌,M~D~N,我看行~
请看MDN文档~
楼上说的是mdn上Array.prototyep.slice, 可能楼主指的是 msdn 上 array.slice. 是一个IE类浏览器和W3C类标准浏览器的在js脚本方面的差异。
不要在乎现象,而要找到问题的本质。
啊哈! 喜欢扣源代码的来了
v8 builtins.cc中