续sf angularjs学习笔记第四章
1,自定义filter
<!doctype html>
<html lang='en' >
<head>
<title>自定义filter</title>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script>
</head>
<body ng-app='app' ng-controller="ctrl">
<h1>{{pageHeading | titleCase}}</h1>
<script>
function ctrl($scope) {
$scope.pageHeading = 'behold the majesty of your page title';
}
var APP = angular.module('app', []);
APP.filter('titleCase', function() {
var titleCaseFilter = function(item) {
var words = item.split(' ');//split() 方法用于把一个字符串分割成字符串数组。stringObject.split(separator(字符串或正则表达式,从该参数指定的地方分割 stringObject。),howmany(该参数可指定返回的数组的最大长度))
for (var i = 0; i < words.length; i++) {
words[i] = words[i].charAt(0).toUpperCase() + words[i].slice(1);//charAt() 方法可返回指定位置的字符。slice(start(要抽取的片断的起始下标),end(紧接着要抽取的片段的结尾的下标)) 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
}
return words.join(' ');
};
return titleCaseFilter;
});
</script>
</body>
</html>
这个demo的作用是将’behold the majesty of your page title’每一个单词的第一个字母大写,自定义一个filter titleCase
页面显示如下: