小编ial*_*eev的帖子

将"is"运算符应用于方法组:为什么编译器允许它?

请考虑以下代码:

var result = IDisposable.Dispose is object; //result equals false
Run Code Online (Sandbox Code Playgroud)

对我(以及我的同事实际上引起我的注意)这个代码的编译感到惊讶.

首先,我的想法IDisposable.Dispose是以某种方式转换为兼容delegate.但结果必须是true因为当然delegate可以分开object.

寻找到本说明书中,我发现方法组具有特殊由编译器处理(在的上下文中操作):

如果E是方法组...结果为false.

纯粹出于好奇,为什么它在规范中?为什么编译器允许它?为什么不抛出编译时错误(比如匿名函数)?

更新:

  • 它在VS2013(12.0.21005.1)和.NET 4.5/4.5.1中为我编译;
  • piojo让我们知道这个代码不是用Mono编译的(我自己无法检查);
  • 它不是为VS2015(4.5或3.5)中的leppie 编译的;
  • 未在VS2013/12.0.30501.00 update 2下编译,.NET 4.5.2 target(caramiriel);

c# method-group

27
推荐指数
0
解决办法
360
查看次数

绑定AngularJS中的input [date]和Moment.js

为了制定问题,我准备了简化的例子:

...
<input type="date" ng-model="selectedMoment" />
...
<script>
 angular.module('dateInputExample', [])
     .controller('DateController', ['$scope', function($scope) {
       $scope.selectedMoment = moment();
        //...more code...
     }]);
</script>
Run Code Online (Sandbox Code Playgroud)

基本上,我只需要在模型(moment.js的日期)和视图(输入[日期]字段)之间进行绑定才能正常工作 - 更新模型时更新日期输入,反之亦然.显然,尝试上面的例子会给你带来错误,模型不是Date类型.

这就是为什么我要问经验丰富的AngularJs开发人员,我该如何正确实现这种绑定?

任何建议表示赞赏.

javascript angularjs momentjs

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

标签 统计

angularjs ×1

c# ×1

javascript ×1

method-group ×1

momentjs ×1