前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >javascript 红皮高程(9)

javascript 红皮高程(9)

作者头像
web前端教室
发布2018-02-06 13:39:51
5490
发布2018-02-06 13:39:51
举报
文章被收录于专栏:web前端教室

这两天把JS的Number类型过了一遍,真是遍地是坑啊,如果这里出一些面试题,我100%要栽在这里。

NaN,undefined,null,Infinity,isNaN(),parseInt(),isFinite(),在ECMAScript中,任何数值除以非数值都会返回什么?是NaN。

这些个知识点啊,我还得反复的看,没个完。。。

日行一步,今天往前一步,学习String类型

定义,由0或多个16位Unicode字符组成的序列,叫字符串。

字符字面量,也叫转义序列。详见第33页

如果字符串中包含双字节字符,length属性可能无法返回精确的字符数目。

重点: ECMAScript中的字符串是不可变的!!

某些旧版本浏览器拼接字符串很慢的原因,是因为改变变量保存的字符串,首先我销毁原来的字符串,再用包含新值的字符串填充该变量。

(真心的不看不知道啊,我写这些年JS,不知道这个知识点)

var lang = 'java';

lang = lang + 'script';

过程如下:

1、先创建一个容纳10字符的新串;

2、然后在这个新串中填充'java'和'script';

3、最后一步销毁原来的字符串'java'和'script';

========================

这个过程,在现代的浏览器中也绝对是不小的性能开销。

看来我以后要尽量避免在for循环中以 += 的形式拼接dom节点了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-03-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 web前端教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档