小编Joe*_*ano的帖子

在构造函数和原型中声明javascript对象方法

在创建javascript对象时,我可以在构造函数或原型中放置方法声明.例如,假设我想要一个具有Name属性和Bark方法的Dog类.我可以将Bark方法的声明放入构造函数中:

var Dog = function(name) {
    this.Name = name;
    this.Bark = function() {
        alert(this.Name + " bark");
    };
}
Run Code Online (Sandbox Code Playgroud)

或者我可以作为原型对象的方法:

var Dog = function(name) {
    this.Name = name;
}

Dog.prototype.Bark = function() {
    alert(this.Name + " bark");
};
Run Code Online (Sandbox Code Playgroud)

当我实例化Dog类型的对象时,两种方法似乎都正常工作:

var dog = new Dog("Fido");
dog.Bark();  //Both approaches show "Fido bark"
Run Code Online (Sandbox Code Playgroud)

我应该更喜欢这些方法中的一种吗?使用一个优于另一个是否有任何优势?在幕后,这两种方法最终做了完全相同的事情吗?大多数人倾向于采用哪种方法?

谢谢您的帮助.

javascript oop

146
推荐指数
3
解决办法
7万
查看次数

HTML5 WebStorage数据是如何物理存储的?

在使用HTML5 WebStorage功能时,我知道某些浏览器(如Chrome)具有开发人员工具,使用户能够浏览WebStorage的内容以进行调试和故障排除.

我想知道是否可以在文件系统中查看Web存储的内容.此内容是否存储在文件系统中位于某个标准位置的文本文件中?或者这些数据是否由各种浏览器以某种专有的二进制格式存储,并且不能通过浏览文件系统来访问或查看?

我提出这个问题的动机是看你是否可以在文件系统上查看WebStorage的内容作为开发和调试的帮助,而且出于好奇也看看这些数据是如何实际存储的.

谢谢.

html html5 local-storage web-storage

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

哪个HTML5形成javascript polyfill具有最广泛的功能和浏览器范围?

HTML5中的新表单属性和标签非常棒.不幸的是,在Chrome和Firefox中对这些只有有限的支持,在IE9及以下版本中基本上不支持这些.

我已经调查过使用Modernizr和HTML5 polyfill在缺乏本机支持的浏览器中填充此功能.但是,HTML5表单功能似乎有大量的polyfill,例如webshims lib,webforms2和h5f(例如参见https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser上的列表)-Polyfills)我不确定哪一个或哪些我应该花时间学习.

哪些HTML5形式的polyfill会给我最广泛的HTML5功能和浏览器覆盖范围?

forms html5 polyfills webshim

10
推荐指数
1
解决办法
1949
查看次数

如何在RESTful API中处理异常以收集结果?

我们正在设计一个RESTful API来返回文档集合.我们的初始实现使用HTTP状态代码来指示是否无法满足请求.这似乎是一种被广泛接受的最佳实践(例如参见此处).

我们最近遇到了一个用户正在提取1000个文档的问题.其中一个文档检索失败,因此我们返回了HTTP 500状态代码.

另一种方法是返回HTTP 200状态代码,其中有效负载具有我们能够检索的999个文档,然后是错误集合,指示失败的那个.

这种替代方法是违反RESTful原则的吗?应如何处理这种情况?除了这两种方法之外还有其他选择吗?

api rest api-design restful-url

8
推荐指数
1
解决办法
436
查看次数

当表有自己的链接时的SQL查询

嗨说我有一张桌子:

Person:
PersonId
Name
ManagerId
Run Code Online (Sandbox Code Playgroud)

所以ManagerId是一个回复给另一个人的参考.

所以数据库中可能有人:

1
Bob
null

2
Steve
1

3
Tim
2
Run Code Online (Sandbox Code Playgroud)

所以鲍勃是史蒂夫的经理而史蒂夫是蒂姆的经理.

所以我想要做的就是编写一个查询,让Bob管理下的所有人.直接或间接.所以我想要得到史蒂夫和蒂姆.在同一条线上.

如果我写:

select * from Person
where ManagerId = 1 I would get only Steve.
Run Code Online (Sandbox Code Playgroud)

我怎么写它所以我直接或间接地让每个人都在Bob下?

sql t-sql recursion common-table-expression

6
推荐指数
1
解决办法
1349
查看次数

使用自定义段变量设置ASP.Net MVC 4路由

我刚刚开始研究一个有几个区域的应用程序(基本网格主/系统细节类型......)我正在研究利用MVC中的漂亮路由功能(特别是4个)而我"只是没有得到它"我相信.

目前唯一定义的路线是基本路线:

routes.MapRoute("Default", 
            "{controller}/{action}/{id}", 
            new { controller = "Account", action = "Index", id = UrlParameter.Optional }
        );
Run Code Online (Sandbox Code Playgroud)

这很好,它适用于我们定义的区域,所以我假设它必须知道用户在哪里,并根据用户所在的位置/区域上下文路由到相应的控制器..到目前为止很好..

现在,我正在尝试建立一条可以处理的新路线

/someController/someAction/{statusName} 
Run Code Online (Sandbox Code Playgroud)

特别是:

/OrderManager/List/New 
Run Code Online (Sandbox Code Playgroud)

/OrderManager/List/Viewed
Run Code Online (Sandbox Code Playgroud)

其中"新"是"新"状态,并且Action Signature看起来像:

public ActionResult List(string statusName)
Run Code Online (Sandbox Code Playgroud)

我假设我可以添加新的路由低于默认的路由标识"statusName"而不是Id,但当然,H将如何路由机制知道之间的区别:

/控制器1 /动作1/15

/控制器2 /动作2 /新

我确实尝试添加一个"静态"路径的形式

routes.MapRoute("Default", 
            "ControllerName/ControllerAction/{statusName}", 
            new { statusName = UrlParameter.Optional }
        );
Run Code Online (Sandbox Code Playgroud)

我以为我可以"hiJack"只是一条路线,并做一些特殊的事情,但要知道有用,路由器在第一场比赛停止?我认为无论如何这是解决这个问题的错误方法..

所以现在我想要达到这样的想法:

/somecustomroutename/somesortValue
Run Code Online (Sandbox Code Playgroud)

恩./ OrderManagerList/viewNew

这些路线基本上是"别名".我原以为添加以下路线就可以了:

 routes.MapRoute("Default_List",
          "OrderManagerList/{statusName}",
          new {controller="OrderManager", action="List", statusName= UrlParameter.Optional }
      );
Run Code Online (Sandbox Code Playgroud)

与OrderManager控制器上的相关操作:

public ActionResult List(string statusName)
Run Code Online (Sandbox Code Playgroud)

无论我尝试什么,参数都为null,或者"无法找到资源"

我知道控制器需要有一个相应的View文件..但这不是问题,问题是我尝试理解路由..

所以我的问题......从根本上说,我对MVC(4)中的路由缺少什么?甚至一些像我这样的傻瓜能够理解的好文章?

我的理解; 定义路线,并映射它的"端点"..然而,我想我不理解机器正在制造的假设.

无论如何,如果需要进一步解释/编辑,请告诉我..

提前致谢.

asp.net-mvc routing asp.net-mvc-routing asp.net-mvc-4

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

如何将.net程序集添加到全局程序集缓存(GAC)

如何将库添加到GAC?我可以在Visual Studio中列出GAC中的汇编.我只想向GAC Library DLL添加一个文件它是AjaxControlToolkit.

.net gac ajaxcontroltoolkit

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

使用 Redirect() 时将信息传递回视图

我从多个页面调用控制器,并使用returnUrl参数返回正确的调用位置:

public ActionResult EmailOrder(int id, string returnUrl)
{
    var message = "The order has been emailed";
    if (!string.IsNullOrEmpty(returnUrl)) return Redirect(returnUrl);
    return RedirectToAction("Details", new { id, message });
}
Run Code Online (Sandbox Code Playgroud)

使用时如何将附加信息传递回视图Redirect(url)?在上面的示例中,我希望能够在有值message时传回。returnUrl

asp.net-mvc tempdata asp.net-mvc-3 asp.net-mvc-4

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

SQL Server 2012 FTS是否支持点击突出显示?

Sql Server 2008本身不支持其FTS功能中的命中突出显示,目前您必须使用各种技术实现自己.微软在未来的SQL Server版本中包含了一些模糊的声音.

有谁知道SQL Server 2012 FTS是否会对点击突出显示提供原生支持?

full-text-search sql-server-2008 hit-highlighting sql-server-2012

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

C#修改字符串列表而不进行迭代

我有一个列表,从第三方返回给我.列表中的每个字符串以"mph"结尾,我想删除"mph".显而易见的答案是在列表上进行预告,但我不知道是否有更有效的方法来做到这一点.

谢谢.

c# string ienumerable foreach

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