bootstrap不算是javascript框架,它只是一个前端的ui框架,然后有一些附带的js插件而已。
angularjs是一个javascript的mvvm的框架,是为了开发有复杂业务逻辑的CRUD应用而生的
AngularJS是js框架,它定义了如何组织代码,引入了很多概念,如 service, scope, filter, directive等,它实现了双向绑定,只需要更改scope中的数据,视图会自动更新,不用再去写dom操作来更新视图,代码可以更多的关注业务逻辑;
jquery只能说是一个前端库,它的优势跟名字一样是查询,它提供方便的选择器,但是并没有规定怎么去组织代码,也没有实现双向绑定,所以使用jquery时,大部分代码实际上是dom操作,而不是业务逻辑;
bootstrap是css框架,它提供了响应式布局和扁平化的组件风格,当然也提供了一些带交互的控件,这些控件是基于jquery的。
它们三者可以结合起来,angularJS默认自带一个jquery的轻量版jqLite,如果引入jquery则会替代自身的jqLite,angularJS本身没有提供任何样式,所以,可以结合bootstrap来做界面。
Angular.js 与Vue.js 及为什么选vue
angular和jquery的区别
angular中是尽量避免操作DOM, angular是基于数据驱动, 适合做数据操作比较繁琐的项目,angular适用于单页面开发,是一个比较完善的mvvm框架, 包含模板和双向数据绑定, 路由, 模块化, 服务, 过滤器, 依赖注入等所有功能,但是angular验证功能比较薄弱, 需要写很多模板标签, 而且ngview只能有一个, 不能嵌套多个视图,angular的兼容性比较好, jquery是基于操作DOM, 适用于操作DOM比较多的项目, jquery是一个库, 比较大,兼容大部分浏览器, 有丰富的插件, 可拓展性强, jquery不能向后兼容, 使用插件时,可能会有冲突,
angular和vue的差别
一angular是mvvm框架, 而vue是一个渐进式的框架, 相当于view层, 都有双向数据绑定, 但是angular中的双向数据绑定是基于脏检查机制, vue的双向数据绑定是基于ES5的getter和setter来实现, 而angular是有自己实现一套模板编译规则,vue比angular更轻量, 性能上更高效, 比angular更容易上手, 学习成本低, vue需要一个el对象进行实例化, 而angular是整个html页面下的,单页面应用, 而vue可以有过个vue实例