小编Seb*_*iva的帖子

JsPerf:ParseInt vs Plus转换

我试着通过以下jsperf来探测加号(+)转换比parseInt更快,结果让我感到惊讶:

Parse vs Plus

准备代码

<script>
  Benchmark.prototype.setup = function() {
    var x = "5555";
  };
</script>
Run Code Online (Sandbox Code Playgroud)

解析样本

var y = parseInt(x); //<---80 million loops
Run Code Online (Sandbox Code Playgroud)

加样品

var y = +x; //<--- 33 million loops
Run Code Online (Sandbox Code Playgroud)

原因是因为我使用"Benchmark.prototype.setup"来声明我的变量,但我不明白为什么

见第二个例子:

Parse vs Plus(局部变量)

<script>
  Benchmark.prototype.setup = function() {
    x = "5555";
  };
</script>
Run Code Online (Sandbox Code Playgroud)

解析样本

var y = parseInt(x); //<---89 million loops
Run Code Online (Sandbox Code Playgroud)

加样品

var y = +x; //<--- 633 million loops
Run Code Online (Sandbox Code Playgroud)

有人能解释一下结果吗?

谢谢

javascript performance type-conversion parseint

13
推荐指数
2
解决办法
939
查看次数

Javascript:通过引用传递

有人可以在下面的代码中解释我,为什么当我做o = {}时,对象没有被重置?

var funky = function (o) {
    o.z = null;
    o.a = "aaa";        
    o = {};
};

var x = { z: "zzz"};
funky(x);

console.log(x);
Run Code Online (Sandbox Code Playgroud)

javascript pass-by-reference

3
推荐指数
1
解决办法
195
查看次数

MVC - 从ListBoxFor获取ViewModel对象

我在提交表单后尝试获取自己的viewmodel,我收到以下错误:"无法将'System.String []'类型的对象强制转换为'System.String'"

这是我的代码:

视图模式:

public class SoftwarePackages
{
 public string[] PermissionsList { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

ASPX

<%: Html.ListBoxFor(model => model.PermissionsList, new List<SelectListItem>(), new { size = 10 })%>
Run Code Online (Sandbox Code Playgroud)

调节器

[HttpPost]
public ActionResult Index(SoftwarePackages softwarePackages)
{
  code...code...code
}
Run Code Online (Sandbox Code Playgroud)

问题是什么?

谢谢

zurdoIL

c# asp.net asp.net-mvc

2
推荐指数
1
解决办法
1万
查看次数