knockout.js(js)代码在IE中出现“意外地调用了方法或属性”的错误

    var CartListViewModel = function () {

        var self = this;



        self.payment = [

                    { name: "", value: 1 },

                    { name: "", value: 2 },

                ];



        self.items = ko.observableArray([]);    // {'id':1,'data':['aa','bb']}



        self.load = function () {

          



             var data = <%=cartListMap %>;

            



            var items = new Array();

            for (var i in data) {

                var dataItem = data[i];



                var cartItem = new CartItemViewModel()

                。。。



                items.push(cartItem);

            }

            self.items(items);

        };



        self.TotalSum = function(){

            var totalsum = 0;

            var ilength = this.items().length;

            for(var idx = 0; idx < ilength; idx++)

            {

                var iItem = this.items()[idx];

                if (iItem.selected())

                {

                    totalsum = totalsum + iItem.goodsPrice();

                }

            }    



            return totalsum.toFixed(2);            

        }





    }

 上面部分knockout.js代码,其中,TotalSum函数中,return totalsum;(原来的代码)在FF中正常运行,但在IE总出现“意外地调用了方法或属性”的错误。后来在代码后加了toFixed(2)后正常。

你可能感兴趣的:(knockout)