party_bid_core总结

本文介绍了JavaScript编程中的一些实用技巧,包括使用`this`关键字、处理`undefined`等特殊值的方法、利用`localStorage`进行数据存储的不同方式以及如何通过嵌套`map`函数更新复杂数据结构。
[size=medium]1.对于this:this是指当前的指针,当在一个函数里再写一个函数,而且要在里面的函数里用this的话,就要在外面的函数里把this赋值给一个变量传递到里面的函数[/size]
var bidding = this;
_.map(activities, function (value, key) {
if (key == Activity.get_current_activity()) {
value.biddings[bid].push(bidding);
}
})

[size=medium]2.对于undefined null Nan false ""的理解[url]http://stu-zhaoli.iteye.com/blog/2041519[/url]
3.hash添加删除数据:[/size]
activities[activity_name] = this;//添加
delete activities[activity_name];//删除

[size=medium]4.localStorage用点方法和用getItem方法的区别:当取一个不存在的对象时,用点方法会报错,而getItem方法会创建一个空的对象;相对应的,取hash表中某不存在的对象,用点方法会报错而用a["name"]则会创建一个空的对象,不会报错
5.当一个对象用数组或hash形式各种嵌套,而又想更改里层的某数据时,可以套多层的map:[/size]
_.map(activities,function(activity){
if(activity.name == Activity.get_active_activity_name()){
_.map(activity.bids,function(bid){
if(bid.name ==localStorage.current_bid){
bid.biddings.push(bidding)
}
})
}
})
为了优化 SQL 语句 `SELECT t1.SUSS_BID_DEALER_CODE, t1.SUSS_BID_DEALER FROM eqms.tqssa04 t1 JOIN EQMS.TQSSA04_1201 t2 ON t1.SUSS_BID_DEALER = t2.SUSS_BID_DEALER WHERE t1.SUSS_BID_DEALER IS NOT NULL;`,可以从以下几个方面入手: #### 1. 创建索引 在 `eqms.tqssa04` 表的 `SUSS_BID_DEALER` 列和 `EQMS.TQSSA04_1201` 表的 `SUSS_BID_DEALER` 列上创建索引,以加快连接操作的速度。 ```sql -- 在 eqms.tqssa04 表的 SUSS_BID_DEALER 列上创建索引 CREATE INDEX idx_tqssa04_suss_bid_dealer ON eqms.tqssa04 (SUSS_BID_DEALER); -- 在 EQMS.TQSSA04_1201 表的 SUSS_BID_DEALER 列上创建索引 CREATE INDEX idx_tqssa04_1201_suss_bid_dealer ON EQMS.TQSSA04_1201 (SUSS_BID_DEALER); ``` #### 2. 检查统计信息 确保数据库的统计信息是最新的,这有助于查询优化器生成更优的执行计划。不同的数据库更新统计信息的方法不同,例如在 MySQL 中可以使用 `ANALYZE TABLE` 语句: ```sql -- 更新 eqms.tqssa04 表的统计信息 ANALYZE TABLE eqms.tqssa04; -- 更新 EQMS.TQSSA04_1201 表的统计信息 ANALYZE TABLE EQMS.TQSSA04_1201; ``` #### 3. 考虑使用覆盖索引 如果查询只需要 `SUSS_BID_DEALER_CODE` 和 `SUSS_BID_DEALER` 列,可以考虑创建覆盖索引,这样查询可以直接从索引中获取所需数据,而无需访问实际的表数据。 ```sql -- 在 eqms.tqssa04 表上创建覆盖索引 CREATE INDEX idx_tqssa04_covering ON eqms.tqssa04 (SUSS_BID_DEALER, SUSS_BID_DEALER_CODE); ``` #### 4. 过滤条件提前 如果可能的话,在连接之前先过滤掉不需要的数据,减少连接操作的数据量。不过在这个查询中,过滤条件已经在连接之后了,可能不太适用。 ### 优化后的 SQL 示例 ```sql -- 创建索引 CREATE INDEX idx_tqssa04_suss_bid_dealer ON eqms.tqssa04 (SUSS_BID_DEALER); CREATE INDEX idx_tqssa04_1201_suss_bid_dealer ON EQMS.TQSSA04_1201 (SUSS_BID_DEALER); CREATE INDEX idx_tqssa04_covering ON eqms.tqssa04 (SUSS_BID_DEALER, SUSS_BID_DEALER_CODE); -- 更新统计信息 ANALYZE TABLE eqms.tqssa04; ANALYZE TABLE EQMS.TQSSA04_1201; -- 执行查询 SELECT t1.SUSS_BID_DEALER_CODE, t1.SUSS_BID_DEALER FROM eqms.tqssa04 t1 JOIN EQMS.TQSSA04_1201 t2 ON t1.SUSS_BID_DEALER = t2.SUSS_BID_DEALER WHERE t1.SUSS_BID_DEALER IS NOT NULL; ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值