java学习 JavaScript学习心得

简介: Javaweb轻量级软件开发,当时作为新手而言看的<Head First Java(第二版·中文版)>这本书,在我觉得这本书还是不错的,没有基础的同学可以在逗逼的气氛中搞定基础语法、体会面向对象的思想,有编程基础的同学也会发现原来技术书也可以写成这样!厉害了.

java学习 JavaScript学习心得

用Java也有段时间了,现在想想当时学这个的时候,也是挺辛苦的,所以成就感油然而生.刚开始学些基础的,Javaweb轻量级软件开发,当时作为新手而言看的<Head First Java(第二版·中文版)>这本书,在我觉得这本书还是不错的,没有基础的同学可以在逗逼的气氛中搞定基础语法、体会面向对象的思想,有编程基础的同学也会发现原来技术书也可以写成这样!厉害了...Java是目前最流行的编程语言之一——它可以用来编写Windows程序或者是Web应用,移动应用,网络程序,消费电子产品,机顶盒设备,它无处不在,下面就来说说我在学习的时候遇到的一些问题,简单谈谈在下的心得吧!也希望大家多指教了.

其实基础一些的还好.我想说说JavaScriptJavaScript 是脚本语言,是一种轻量级的编程语言,是可插入 HTML 页面的编程代码,插入 HTML 页面后,可由所有的现代浏览器执行。JavaScript 是与 HTML 和 CSS 结合运行在浏览器中,强大且富有表现力的语言。基于一个叫做 ECMAScript 的开放标准,JavaScript 快速的发展成为“网络的编程语言”。jQuery 所有的力量都来自于 JavaScript,所以无需赘言,它是一门值得学习的重要语言。拥有 JavaScript 的基础知识,会对理解,构建和调试代码很有帮助。如果你想学习Java可以来这个群,首先是二二零,中间是一四二,最后是九零六,里面有大量的学习资料可以下载。

java学习 JavaScript学习心得

下面还是列举一些关于这方面的问题吧,看过之后大家应该也就清楚了

第一个

{a:1}.a报错,错误Uncaught SyntaxError: Unexpected token .

解决:

({a:1}.a) // 或({a:1}).a

对象字面值不能正确解析

第二个

123.toFixed(2)报错,错误Uncaught SyntaxError: Unexpected token ILLEGAL

解决:

(123).toFixed(2) // >> "123.00"// 以下两种都可以,但完全不推荐123..toFixed(2)123 .toFixed(2)

数字的点操作符

第三个.

尝试解释下连等赋值的过程。下面的代码为什么是这样的输出?

var a = {n:1};var b = a; a.x= a = {n:2};console.log(a.x);// --> undefinedconsole.log(b.x);// --> {n:2}

连等赋值问题

第四个

下面的代码返回什么,为什么?

var x =20;var temp = { x:40,foo:function() {var x =10;returnthis.x; } }; (temp.foo, temp.foo)(); // 20,而不是40

逗号操作符

第五个

parseInt传入数字时为什么有以下输出?

parseInt(0.000008) // >> 0parseInt(0.0000008) // >> 8

parseInt传入数字

java学习 JavaScript学习心得

也不说那么多了,简单说这几个吧,下面给大家分析一下吧

第一个

声明对象字面值时,语句开头不应该用

{

,因为js解释器会认为这是语句块(

block

)的开始。

同理,类似问题

{ name: "mc", id: 1 }

会报错

Uncaught SyntaxError: Unexpected token :

也是这个道理。

({ name: "mc", id: 1 })

即可正确解析。但稍注意下,

{name: "mc"}

是不会报错的,它等同于

name: "mc"

,并返回一个字符串

"mc"

第二个

很简单,js解释器会把数字后的

.

当做小数点而不是点操作符。

第三个

我们可以先尝试交换下连等赋值顺序(

a = a.x = {n: 2};

),可以发现输出不变,即顺序不影响结果。

那么现在来解释对象连等赋值的问题:按照es5规范,题中连等赋值等价于

a.x = (a = {n: 2});

,按优先获取左引用(

lref

),然后获取右引用(

rref

)的顺序,

a.x

a

中的a都指向了

{n: 1}

。至此,至关重要或者说最迷惑的一步明确。

(a = {n: 2})

执行完成后,变量

a

指向

{n: 2}

,并返回

{n: 2}

;接着执行

a.x = {n: 2}

,这里的

a

就是

b

(指向

{n: 1}

),所以

b.x

就指向了

{n: 2}

第四个

逗号操作符会从左到右计算它的操作数,返回最后一个操作数的值。所以

(temp.foo, temp.foo)();

等价于

var fun = temp.foo; fun();

fun

调用时

this

指向

window

,所以返回20。

第五个

parseInt(arg)

时会调用

arg.toString()

(0.000008).toString() // "0.000008"(0.0000008).toString() // "8e-7"

到此今天的谈论就结束了,虽然说文章不是很详细,但也希望可以帮到大家

相关文章
|
16天前
|
消息中间件 前端开发 Java
java学习路径
【4月更文挑战第9天】java学习路径
17 1
|
16天前
|
设计模式 前端开发 安全
Java是一种广泛使用的编程语言,其学习路径可以大致分为以下几个阶段
【4月更文挑战第9天】Java是一种广泛使用的编程语言,其学习路径可以大致分为以下几个阶段
15 1
|
1天前
|
Java Nacos 开发者
Java从入门到精通:4.2.1学习新技术与框架——以Spring Boot和Spring Cloud Alibaba为例
Java从入门到精通:4.2.1学习新技术与框架——以Spring Boot和Spring Cloud Alibaba为例
|
1天前
|
Dubbo Java 应用服务中间件
Java从入门到精通:3.2.2分布式与并发编程——了解分布式系统的基本概念,学习使用Dubbo、Spring Cloud等分布式框架
Java从入门到精通:3.2.2分布式与并发编程——了解分布式系统的基本概念,学习使用Dubbo、Spring Cloud等分布式框架
|
1天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
ava从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
|
1天前
|
设计模式 存储 前端开发
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
|
1天前
|
Java API
Java从入门到精通:2.1.5深入学习Java核心技术之文件操作
Java从入门到精通:2.1.5深入学习Java核心技术之文件操作
|
1天前
|
并行计算 算法 安全
Java从入门到精通:2.1.3深入学习Java核心技术——掌握Java多线程编程
Java从入门到精通:2.1.3深入学习Java核心技术——掌握Java多线程编程
|
2天前
|
JavaScript 前端开发 测试技术
学习JavaScript
【4月更文挑战第23天】学习JavaScript
10 1
|
6天前
|
JavaScript Java 测试技术
基于Java的驾考自主学习预约平台的设计与实现(源码+lw+部署文档+讲解等)
基于Java的驾考自主学习预约平台的设计与实现(源码+lw+部署文档+讲解等)
18 0