记一次两小时的js编程学习

综合编程 2018-06-23 阅读原文

JavaScript

特性

1.弱类型语言

2.解释型语言

3.客户端语言

对于有学习Java、C以及Python一类的人来说,最熟悉的莫过于这些都是强类型语言。它们严格的遵守自身的规定,永远也不会有下面的情况出现,因为编译的时候会自己抛出错误而终止运行。

var sum="1"+1  
console.log(sum)
>>"11"

编译类型则与Python的定位比较类似,它们都是一边执行,一边解释。这就是与Java这类编译型语言的不同所在。譬如Java就是先编译生成静态的class文件,然后才会利用jvm执行。

客户端语言则就是对于浏览器而言。我们常说的php就是一种典型的服务器端语言,它是执行在web服务器的脚本。PHP在服务器端利用用户传递的数据生成请求的页面,然后将其发送给用户。而JavaScript则与其相反,因为它是执行在浏览器中。只需要将写好的js脚本和页面发送给用户,这个时候用户的浏览器就会自动生成绚丽多彩的网页。

常用交互

window对象位于DOM层级的最顶端,代表显示页面的浏览器窗口,而我们则可以利用它完成一系列交互动作。

alert("Boom!")
window.alert("Boom, too!") //this is equal to alert("Boom!")

上面是最常见的弹出警告框,此外还有类似的 window.confirm()
window.prompt()

window.document.write()
document.write() // This has the the same fuction of 'window.document.write()'

大家可能已经注意到在一个窗口中永远包含window对象,所以我们省略不写就会默认使用window。

而这里 write()
函数的功能就是直接向HTML文档写入字符,对的!就是一种直接写入功能,相当的笨拙。

这里会有更好的解决方案,举个例子:

this is for Rare to test

var item=document.getElementById("1234");
item.innerHTML="这是十八用来测试的"
//这个时候

标签的文本其实已经变为了上面的字符串

备注:
JavaScript的每一行的末尾不强制使用 ;
,这一点和Python语言极其的类似。

数据类型

相对其他语言,js的数据类型也是一般般,其实并无奇特之处,当然 没有字符
这个数据类型需要特别注意一下。下面介绍它的基本数据类型。

1.数值

很遗憾的说,JavaScript似乎并没有具体区分 byte, short, int, long, float和double
耶。就笼统的指定了一个数值类型。我们需要注意的是,NaN (not a number)
,Infinity(无穷大)这两个在数值中的特殊存在。

2.字符串

雷同C中的字符串类型 (虽然C没有字符串类型)
。因为它们的一些函数极其的相似,比如 concat(), split()
等等。命名和用法都几乎一摸一样。

3.布尔值

false
true
两个值,与其他语言中似乎没有任何区别以及特异所在。 注意点:JavaScript中有类假的概念,即便不是false也会被当做false处理,请注意下面几个值:

1.布尔值false

2.未定义undefined

3.null

4.0

5.NaN

6.""空字符串

面向对象

很遗憾地说,JavaScript设计的时候肯定没有考虑OOP (Object-Oriented Programming)
。当然即便这样JavaScript也提供了多种new对象的方式:

1.创建直接实例

JavaScript直接内置了一个对象Object,可以用来创建一个小白对象,即空白对象:

newObject=new Object()

是不是与常见的创建对象不太一样,比如下面这样的:

// in java
Class item=new Class();
// in python
item=Class()

2.使用关键词 this

3.匿名函数

4.使用构造函数

emmm,没想到写这篇文章比学习的时间还长,先撤了先撤了,有空填坑,回见啦。

简书

责编内容by:简书阅读原文】。感谢您的支持!

您可能感兴趣的

validator.js文档 原文 基于字符串的验证和过滤净化库。 Strings only 本代码库仅基于字符串进行验证和过滤净化 如果不确认你的输入是否是一个字符串,可以使用 '' + input 将其强制转化。如果传入的参数...
由浅入深JavaScript13进阶-简单运动 JavaScript运动 说到JavaScript运动就不得不提一提JS定时器函数 JS定时器有两种,延时性和周期性他们都是window对象的方法。 定时器 延时性定时器 setTimeout(函数,毫秒数)...
Digital Prepping While you're reading this, keep in mind that I'm available for hire! If you've got a JavaScript project getting out of ...
OnType Javascript but want the type to match a wor... I am working on an input box for a promo code. We have several promo codes. However, on one promo code, if the user type...
Abbruchratenverringerung bei bücher.de Als ich letztens bei buecher.de auf der Warenkorbseite die Artikeltitel markierte, in die Zwischenablage kopierte und d...