JS 精粹(一)】的更多相关文章

这章主要讲语法,DC使用了表示形式语法的巴克斯范式图,这的确比语言来得准确简洁.我只想表达一个问题:表达式与表达式语句的关系.因为其他问题很明白. 从DC的巴科斯范式图上大致可以认为,表达式是比表达式语句宽泛的.DC的子集中表达式语句是表达式的真子集. 表达式语句主要用于单个或多个标识符赋值.函数或方法调用.删除对象的属性,语法开头是标识符. 表达式:字面量.标识符.加上圆括号的表达式.prefix+expression.expression+infix+expression.expressio…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-…
函数是对象,它与其它对象唯一的不同是它可以调用.函数可实现:代码复用.信息隐藏.代码组合调用. 建立函数时会建立:上下文.调用函数的代码.每个函数(除Function.prototype)都会有一个原型对象. function foo ( ) { //code } foo.prototype = {constructor:this}; 它必有一个foo.prototype对象,而且这是显含的. 函数字面量属于字面量,也就属于表达式的范畴.从而可以使用表达式的地方就可以使用函数字面量. JS函数的…
(一)基本问题 JS的数据类型(不是数据结构)分:简单数据类型(undefined\null\boolean\string\number\symbol).复杂数据类型(object). 对象是可变的键值对的集合,最关键是对象是无类型(class-free)的,也就是说对于新的属性值类型没有要求.属性名可以是name(标识符).string(包括空字符串),很适合各类数据管理.最牛逼的机制是对象之间的非传统意义上的继承或是说委托更好一些:可以减少对象初始化的时间和内存.而且这是一种不同于类的新的编…
先说说JS是容易被误解的语言的观点.从名字上来看,"Java"这似乎暗示着这门语言与Java的关系:好像这门语言是Java的子集,或比Java弱.但实际与Java并无关系,如果说非要有关系,那可以说说一点八卦.当年Netscape确实为了让它快速发展,与Sun公司有过合作:其中为了借大热的Java东风,改名Javascript(原来叫做Livescript).JS第一版仅仅用了10天,未经打磨就广泛使用至今(什么是"网红",这才是"网红").JS…
函数若是不return则默认返回undefined const value=()=>{ let a=3; } let value_test; console.log(value(),value_test); // undefined undefined console.log(typeof value,typeof value_test); // argument并不是一个真正的数组,它拥有一个length属性,但是它没有数组其他的方法. JavaScript只有一个数字类型.它在内部被表示为6…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-…
数组方法: 模拟队列的操作:push()/shift();unshift()/pop();模拟栈操作:push()/pop(); push()返回增加后的长度.unshift也是.pop和shift返回项值.concat()在已有的数组基础上返回一个数组,即是传入的是数组,它也会将数组变成单一的参数.reverse()没有用,join()将数组以某种分隔符的形式返回字符串.字符串的split可返回一个数组. slice在字符串及数组上都会有,slice(n,n+p),p是复制数目.数组会得到一个…
js基础已经打了好几次了,慕课跟着学了一遍,视频看了一些,还读了诸如 jsdom艺术,js精粹以及锋利jq(没读完). 这次再次重头读并写一遍代码,工具书是js,查缺补漏高级程序设计第二版,犀牛书有点贵还那么厚是不是可以当词典呢,暂时先看这个,更是有一些新想法填补一下. 什么时候能厉害呢·~~~~ 想到写博客时已经看到第五章,之前都是介绍变量,就先不管了. 正文(也就是笔记类吧,好喜欢自言自语): 函数也是有属性的,厉害吧,每个函数都有两个属性,length,prototype lengh:表示…
JavaScript是一门被误会最深的语言,这话一点不假,我们看下它的发展历史. 1995年,Netscape要推向市场,需要一门脚本语言来配套它.是使用一门已有的语言,还是发明一门新的语言,这也不是我能决定的.来自高层管理人员的强制命令是这门语言必须"看起来像Java".这样也就排除了已有的语言Perl,Python,和Tcl,以及Scheme. 当时Netscape(网景)公司招了个程序员来干这件事情.他就是JavaScript之父Brendan Eich,Brendan Eich…