JQuery的链式编程,隐式迭代是啥意思?

链式编程

1.好处

“一句话,链式编程可以省去很多重复的代码。”

这话什么意思呢?举个例子。

/*设置obj对象的两个属性*/

//普通做法是这样的

obj.name = ‘小明‘;

obj.age =  155;

//链式编程是这样的。

obj.name(‘小明‘).age(15);

2.注意

链式编程注意:

$(‘div’).html(‘设置值’).val(‘设置值’);这样是可以的。

但是$(‘div’).html().text()这样是不对的,因为获取值时返回的是获取的字符串而不是对象本身所以不能链式编程。

3.断链了咋整

链式编程的时候一定要注意在什么时候“破坏”了链,当前对象的传递,如果传递被破坏,则继续链式编程会有意想不到的结果!nextAll(),prevAll(),sibilings()

如何解决:调用end()方法。(返回链 被破坏前的对象。)

隐式迭代

上面例子中

$(‘#btn‘).click(function(){

//隐式迭代。。

$(‘p‘).text(‘为了新中国‘).css(‘background‘, ‘blue‘);

});

获取元素P,在传统的dom写法中getElementsByTagName 发现没有方法名Elements 是复数形式。

也就是说获得的应该是一个集合。

我们知道设置集合中元素的属性,那必须的迭代啊。(就是遍历一下啊)

但是Jquery中不需要遍历可以直接设置。  为啥呢? 这就是隐式迭代呗。

时间: 2024-10-11 17:54:18

JQuery的链式编程,隐式迭代是啥意思?的相关文章

模板显式、隐式实例化和(偏)特化、具体化的详细分析(转)

这么多叫法,其实就是三种. 1. 显示实例化 2. 隐式实例化 3. 特化(=具体化).偏特化 一.实例化 1.显示.隐式实例化 什么是实例化:一个通过使用具体值替换模板参数,从模板产生的普通类,函数或者成员函数的过程. 显示实例化:通过名字可见,就是清楚的表明你要实例化的类型 隐式实例化:通过编译器自己推测判断要实例化的类型. 比如一个模板: template<class T> //函数模板实现  void swap(T &a, T &b) {     T temp;    

Scala中的Implicit(隐式转换,隐式参数,隐式类)

文章来自:http://www.cnblogs.com/hark0623/p/4196452.html  转发请注明 代码如下: /** * 隐式转换 隐式参数 隐式类 */ //隐式转换 class Implicit(a: A) { def Test: Unit = { println("Implicit") } } class A { } object Implicit { //隐式转换 implicit def a2Implicit(a: A) = new Implicit(a)

模板显式、隐式实例化和(偏)特化、具体化的详细分析(转)

这么多叫法,其实就是三种.      1. 显示实例化      2. 隐式实例化      3. 特化(=具体化).偏特化 一.实例化 1.显示.隐式实例化       什么是实例化:一个通过使用具体值替换模板参数,从模板产生的普通类,函数或者成员函数的过程.      显示实例化:通过名字可见,就是清楚的表明你要实例化的类型      隐式实例化:通过编译器自己推测判断要实例化的类型.     比如一个模板: template<class T> //函数模板实现  void swap(T

(10)响应式宣言、响应式系统与响应式编程——响应式Spring的道法术器

本系列文章索引<响应式Spring的道法术器>前情提要 响应式编程 | 响应式流 1.5 响应式系统 1.5.1 响应式宣言 关注"响应式"的朋友不难搜索到关于"响应式宣言"的介绍,先上图: 这张图凝聚了许多大神的智慧和经验,见官网,中文版官网,如果你认可这个宣言的内容,还可以签下你的大名.虽然这些内容多概念而少实战,让人感觉是看教科书,但是字字千金,不时看一看都会有新的体会和收获. 这也是新时代男朋友的行为准则: Responsive,要及时响应,24

selenium python 显式和隐式等待方法

1 # -*- coding:utf-8 -*- 2 from selenium import webdriver 3 from selenium.webdriver.common.action_chains import ActionChains 4 from selenium.webdriver.support.ui import WebDriverWait 5 6 import time 7 8 driver = webdriver.Firefox(executable_path='/Us

显式与隐式启动Activity

1 <?xml version="1.0" encoding="utf-8"?> 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="com.example.metrox.l8"> 4 5 <application 6 android:allowBackup="true&quo

(转载)Android理解:显式和隐式Intent

Intent分两种:显式(Explicit intent)和隐式(Implicit intent). 一.显式(设置Component) 显式,即直接指定需要打开的activity对应的类. 以下多种方式都是一样的,实际上都是设置Component直接指定Activity类的显式Intent,由MainActivity跳转到SecondActivity: 1.构造方法传入Component,最常用的方式 Intent intent = new Intent(this, SecondActivit

数据类型回顾——数据类型转换(显式和隐式)—JS学习笔记2015-6-3(第47天)

对于JS这种语言来说,因为它是一种动态类型语言,变量是没有类型的,可以随时赋予任意值. 但是,数据本身和各种运算是有类型的,因此运算时变量需要转换类型. 大多数情况下,这种数据类型转换是自动的,但是有时也需要手动强制转换. 首先看下强制类型转换(显式) 之前提到的Namber.parseInt.parseFloat 都是强制类型转换: 这里在看阮一峰博客(http://javascript.ruanyifeng.com/grammar/conversion.html#toc1) Number方法

Intent_显式与隐式

所谓的显示intent就是我们常用的Intent.setclass(xxx.this,xxx.class)等 隐式Intent则是可以直接通过androidMainfest中的<intent-filter> 启动activity <activity android:name=".Intent1_test"> <intent-filter> <category android:name="android.intent.category.

Dll的显式和隐式调用

隐式调用: 需要把生成动态链接库时生成的.lib文件加入到工程中去,在使用DLL时,只需说明一下就可以直接调用DLL中的函数,像调用程序内部的函数一样 显示调用: 需要使用LoadLibrary方式将自己生成的DLL文件先加载进来,在通过LoadLibrary返回的HINSTANCE,调用GetProcAddress获取想要的函数,然后就可以正常调用DLL中的函数 注意:在应用程序退出前,应该FreeLibrary来释放动态链接库 VC++中有两种方式来导出函数: 1. 通过_declspec