初识JavaScript


初识JavaScript


JavaScript了解:

在1995年由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。

JavaScript概述:

JavaScript 是一种嵌入式(embedded)语言

JavaScript 是一种轻量级的脚本语言。它是单线程的语句(一个线程解析),是一门弱语言(没有固定的类型划分 你给定它的值是什么类型,它就是什么类型),作为脚本语言它可以实现侵入xss攻击

JavaScript 是一种“对象模型”语言

它提供的额外 API 可以分成三大类。

浏览器控制类:操作浏览器

DOM 类:操作网页的各种元素

Web 类:实现互联网的各种功能

它是怎么被解析的?有浏览器的的地方就能解析对应的JavaScript,通过V8引擎实现。

JavaScript包含的内容:

构成三方面:ESMA Script(基本语法及相关对象 es3、es5、es6、es7...),DOM(文档对象模型 操作HTML),BOM(浏览器对象模型 操作浏览器)

JavaScript的入门


书写方式:

1、书写在script标签里面:

<script>   

//语句书写   

console.log("hello world")

</script>

2、书写在js文件里面(推荐)

console.log('hello world')

引入js文件

<scriptsrc="./index.js"></script>

3、书写对应的属性里面(比较少用)

<ahref="javascript:void()">去百度</a>

<ahref="#"onclick="alert('hello world')"></a>

变量定义(使用var 关键词声明)

//var 变量名 = 值

varnumber = 10

变量名的书写(见名知意 区分大小写)

1、只能是对应的字母或者数字或者下划线等字符(不能以数字开头

2、一般采用驼峰命名法(hello World 采用单词拼接 第一个单词首字母小写 其他单词首字母大写

3、不能使用关键词

4、普通变量首字母小写 常量全大写(const)

注释(相当于解释这句话 这个注释不会被翻译)

单行注释 Ctrl + /

//单行注释

多行注释 Alt + Shift + A

/* 多行注释 */

数据类型(检验值类型 基本数据类型)


number类型(所有的数值)

字符串类型String(单引号 双引号 都是字符串)

boolean类型(true false)

null 空类型(是null值的情况下才是空值)

undefined未定义(当前没有给值 没有被定义)

object(对象类型 引用数据类型)

使用typeof来查看对应的类型(基本数据类型返回的是对应的类型名 null类型object)

//类型查看typeof 查看对应的类型的 null显示的是object undefined是对应的null的对象扩展

console.log(typeof nummber1);

console.log(typeof bool);

console.log(typeof un);

console.log(typeof nl);

console.log(typeof str);

类型转换

number类型转为String(string>number 隐式转换 toString方法)

//将对应的number类型转为string类型

var strl = nummber1.toString();

console.log(typeof nummber1);

string转为number(显示转换)

1、number方法(直接转number类型)

2、使用parseInt(转整型/整数)

3、使用parseFloat方法(转小数)

var str2 = "1a123.12a"

console.log(Number(str2));//当你将一个内容转为的数值过程中无法被解析时就会出现NaN

//从前到后拿出里面的数值 前面没有数值就会变成NaN

console.log(parseInt(str2));

console.log(parseFloat(str2));

isNaN 是NaN 返回true 不是返回false

var a = 10

console.log(isNaN(a)) //false

var str = 'abc'

console.log(isNaN(Number(str))) //true

无穷大 无穷小(Infinity)

//无穷大

var max = Infinity

console.log(max>100);    //true

//无穷小

var min = -Infinity

console.log(min<-1);    //true

将字符串转为对应的boolean类型

Boolean方法 转为布尔类型

var str = "abc";

//转为boolean类型 非空就是true 空字符串表示false

var b = Boolean(str); //true

var b2 = Boolean(); //false

console.log(b,b2);

将number转为布尔类型

var number1 = 10;

//number转布尔 非0即为true NaN

console.log(Boolean(number1));  //true

console.log(Boolean(0)); //false

console.log(Boolean(NaN)); //false

将undefined和对应的null转为boolean(false)

var un;

console.log(Boolean(un));    //false

console.log(Boolean(null));  //false

将boolean类型转为number类型(false 0 true 1)

console.log(Number(false))

console.log(Number(true))

将对应的undefined和null转为number(0)

var un

console.log(Number(un));     //NaN

console.log(Number(null));    //0

预算符和表达式

算术运算(加减乘除)

+   -   *   /    %    ++    --

自增和自减的前置和后置的区别:

前置先执行对应的++(--)再执行对应的代码

后置先执行对应的代码 再执行++(--)

逻辑运算

&&与(同true则为true)||或(有true就是true)!非(取反)

比较运算

>   <   >=   <=   !=   ===(全等俩个类型和对应的值一模一样这俩个是一个东西)

赋值运算

=   +=   -=   /=   *=   %=

var j = 10

j + = 100    //110

j / = 10    //11

j * = 5    //55

console.log(j);

位运算

>> 右移 << 左移 - 去除小数

计算顺序 先括号里面的 再进行乘除取余 再进行+- 再进行比较运算 再逻辑运算 再进行赋值

三元运算符(三目运算符)

表达式(Boolean类型表达式)?true的内容:false的内容

var a=10;

var b=20;

console.log(a > b ? 10 : 20);    //20

console.log('123a' / 10 ? 'hello' : 'hi');   //hi

number对应的方法

保留几位小数的方法

var number1 = 3;

var number2 = 10;

//默认的大小是16位  是2^-32  整数位也是16位  超出不能显示(存在问题 后续解决)

console.log(number2 / number1);    //3.3333333333333335

//保留小数(方法会优先调用)  当前这个方法会保留小数  但是会变成字符串(黑色)

console.log((number2 / number1).toFixed(2));

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,658评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,482评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,213评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,395评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,487评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,523评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,525评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,300评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,753评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,048评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,223评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,905评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,541评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,168评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,417评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,094评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,088评论 2 352

推荐阅读更多精彩内容