template的{{each }},jQuery的each,EcmaScript 5的forEach

Posted ami

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了template的{{each }},jQuery的each,EcmaScript 5的forEach相关的知识,希望对你有一定的参考价值。

  1. 区别
1. each 是 art-template 的模板语法,专属的
  + {{each 数组}}
  + <li>{{ $value }}</li>
  + {{/each}} 这是 art-template 模板引擎支持的语法,只能在模板字符串中使用

2. jQuery的 each
  $.each(数组, function)
  $(\'div\').each(function) 一般用于遍历 jQuery 选择器选择到的伪数组实例对象
  $(\'div\')是伪数组是对象,对象的原型链中没有 forEach, 对象的原型链是 Object.prototype
    // 1. 方便的遍历 jQuery 元素
    // 2. 可以在不兼容 forEach 的低版本浏览器中使用 jQuery 的 each 方法

  代替方法:  
    ;[].slice.call($(\'div\')).forEach(function (item) {console.log(item)})

3. forEach 
  + forEach 是 EcmaScript 5 中的一个数组遍历函数,是 javascript 原生支持的遍历方法 可以遍历任何可以被遍历的成员
  + jQuery 的 each 方法和 forEach 几乎一致
  + 由于 forEach 是 EcmaScript 5 中的,所以低版本浏览器不支持


  1. 伪数组概念
var obj = {
    0: \'a\',
    1: \'b\',
    2: \'c\',
    length: 3
  }
  
  ;[].push.call(obj, \'d\')
  
  console.log([].slice.call(obj))
  
  ;[].forEach.call(obj, function (num, index) {
    console.log(num)
  })

以上是关于template的{{each }},jQuery的each,EcmaScript 5的forEach的主要内容,如果未能解决你的问题,请参考以下文章

JQuery中$.each 和$(selector).each()的区别详解

jquery中使用each()和for循环哪个好些

jquery中.map与each的区别?

如何跳出当前jquery.each()函数循环

Jquery的$(selector).each()和$.each()原理和区别

jquery中$.each()的用法