J S 基础

JS代码需要编写到<script>标签中。

我们一般将script标签写到head中。(和style标签有点像)

属性:

       type:默认值text/javascript可以不写,不写也是这个值。

        src:当需要引入一个外部的js文件时,使用该属性指向文件的地址。


js编写位置

<script type="text/javascript" src="路径">    </script>

js基本语法

<script type="text/javascript">

/*

JS注释多行

*/

// 单行

  alert("hello");

document.write("hello");//页面上的

  console.log("hello");

</script>

字面量和变量

<script type="text/javascript">

/*

字面量(常量),都是一些不可改变的值

比如 :1 2 3 4 5 "hello"

*/

// alert(123456);

      var a;/*var 声明变量    默认值undefined*/

      a =123;

a =456;

console.log(a);

var b =789;

console.log(b);

</script>

标识符

<script type="text/javascript">

/*

标识符

- 在JS中所有的可以由我们自主命名的都可以称为是标识符

1、标识符中可以含有字母、数字、_、&

2、标识符不能以数字开头

3、标识符不能是ES中的关键字或保留字

4、标识符一般都采用驼峰命名法

首字母小写、后面每个单词的开头字母大写、其余小写

helloWorld  xxxYyy  小驼峰

HelloWorld  XxxYyy  大驼峰

*/

// var a = 123;

// // var var = 123;  不能这样

// console.log(a)

</script>

数据类型

<script type="text/javascript">

/*

数据类型指的就是字面量的类型

在JS中一共有六种数据类型

基本数据类型:

String 字符串

Number 数值

Boolean 布尔值

Null 空值

Undefined 未定义

引用数据类型:

Object 对象

其中String Number Boolean Null Undefined属于基本数据类型

而Object属于引用数据类型

\"  表示"

\'  表示'

\n  表示换行

\t  表示制表符

\\  表示\

*/

  var a =true;

var str ="hello";

str ="我说:\'今天\t天气真不错!\'";

str ="\\";

console.log(str);

var str2 ="hello";

str2 ="你好";

console.log(str2);

</script>

Number

<script type="text/javascript">

/*

在JS中所有的数值都是Number类型,

包括整数和浮点数(小数)

*/

  var a =123;

a =12.333;

var b ="123";

// console.log(typeof a);

// console.log(typeof b);

  a =Number.MAX_VALUE;/*最大值*/

// console.log(a);//1.7976931348623157e+308

  a =Number.MAX_VALUE *Number.MAX_VALUE;//Infinity 无限大

// a = "abc" * "bcd";//NaN (Not a Number)

// a = NaN;

// console.log(typeof a);

  a =Number.MIN_VALUE;//5e-324  最小值

  console.log(a);

var f =0.1;

var g =0.2;

console.log(f +g);

console.log(

(parseFloat(f)*100 +parseFloat(g)*100) /100  /*精确运算*/

  );

</script>

Boolean

<script type="text/javascript">

/*

Boolean 布尔值

布尔值只有两个,主要用来做逻辑判断

true

- 表示真

false

- 表示假

使用typeof检查一个布尔值时,会返回boolean

*/

  var bool =true;//false

  console.log(bool);

console.log(typeof bool);//boolean

</script>

Null和Undefined

<script type="text/javascript">

/*

Null(空值)类型的值只有一个,就是null

null这个值专门用来表示一个为空的对象

使用typeof检查一个null值时,会返回object

Undefined(未定义)类型的值只有一个,就undefind

当声明一个变量,但是并不给变量赋值时,它的值就是undefined

使用typeof检查一个undefined时也会返回undefined

*/

  var a =null;

console.log(a);

console.log(typeof a);//object

  var b;

console.log(b);//undefined  未定义  没赋值

  console.log(typeof b);//undefined

</script>

强制类型转换

<script type="text/javascript">

/*

强制类型转换

- 指将一个数据类型强制转换为其他的数据类型

- 类型转换主要指,将其他的数据类型,转换为

String Number Boolean

*/

/*

将其他的数据类型转换为String

*/

  var a =123;//number

  var b =a.toString();//string  123

  a =true;//boolean

  a =a.toString();//string

  a =123;

a =null;//null

  a =undefined;//undefined

  a =String(a);//string

  console.log(typeof a);

console.log(a);

</script>

转换为Number

<script type="text/javascript">

/*

将其他的数据类型转换为Number

转换方式一:

使用Number()函数

转换方式二:

- 这种方式专门用来对付字符串

- parseInt() 把一个字符串转换为一个整数

- parseFloat() 把一个字符串转换为一个浮点数

*/

  var a ="123";//123

  a ='abc';//NaN

  a ='789abc';//NaN

  a ="";//0

  a ="      ";//0

  a =true;//1

  a =false;//0

  a =null;//0

  a =undefined;//NaN

  a ="123px";//NaN

// a = Number(a);

  a ="123px";//123

  a ="a123px";//NaN

  a ="123.456px";//132

  a ="123.456.789px";//132.456  第二个点后面的全部舍去

  a =parseInt(a);//parseInt只能取整数

  a ="123.456px";//123.456

  a =parseFloat(a);

a =true;//"true"--> NaN

  a =123.456;//-->"123.456" -->123  //点后面全部舍去

  a =parseInt(a);

console.log(typeof a);

console.log(a);

</script>

其他进制的数字

<script type="text/javascript">

var a =123;

/*

在js中,如果需要表示16进制的数字,则需要以0x开头  0 1 2 3 4 5 6 7 8 9 a b c d e f

如果需要表示8进制的数字,则需要以0  (0o)开头

如果要要表示2进制的数字,则需要以0b开头,但是不是所有的浏览器都支持

*/

  a =0x10;//16

  a =0xff;//255  //15x15

  a =0xcafe;//51966

// console.log(a);

  a =070;//56

  a =0b10;//2

  a ="070";//number

// a = parseInt(a);

  a =parseInt(a,8);//56

  console.log(typeof a);

console.log(a);

</script>

转换为Boolean

<script type="text/javascript">

/*

将其他的数据类型转换为Boolean

使用Boolean()函数

- 数字 ---> 布尔

- 除了0和NaN,其余的都是true

- 字符串 ---> 布尔

- 除了空串,其余的都是true

- null和undefined都会转换为false

- 对象也会转换为true

*/

  var a =123;//true

  a = -123;//true

  a =0;//false

  a =Infinity;//true

  a =NaN;//false

  a =Boolean(a);

a ="hello";//true

  a ="true";//true

  a ="false";//true

  a ="错误";//true

  a ="    ";//true

  a ="";//false

  a =null;//false

  a =undefined;//false

  a =window;//true

  a =Boolean(a);

console.log(typeof a);

console.log(a);

</script>

运算符

<script type="text/javascript">

/*

运算符也叫操作符

通过运算符可以对一个或多个值进行运算,并获取运算结果

比如:typeof就是运算符,可以来获得一个值的类型,它会将该值的类型以字符串的形式返回

"number" "string" "boolean" "undefined" "object"

算数运算符

当对非Number类型的值进行运算时,会将这些值转换为Number然后在运算

任何值和NaN做运算都得NaN

+

+可以对两个值进行加法运算,并将结果返回

如果对两个字符串进行加法运算,则会做拼串,会将两个字符串拼接为一个字符串,并返回

任何的值和字符串做加法运算,都会先转换为字符串,然后再和字符串做拼串的操作

-

- 可以对两个值进行减法运算,并将结果返回

*

* 可以对两个值进行乘法运算

/

/ 可以对两个值进行除法运算

%

% 取模运算(取余数)

*/

  var a =123;

var result =typeof a;//number

// console.log(result);

// console.log(typeof result);

  result =a +1;//124

  result =456+789;//1245

  result =true +1;//1+1=2

  result =true +false;//1+0=1

  result =2 +null;//2+0=2  null-->0

//任何值和NaN做运算都得NaN

  result =2 +NaN;//NaN

  result ="123" +"456";//"123456"

// console.log(result);

  var str ="吃饭了吗?"+

"你好?"+

"吃饭了吗?"+

"没";

var c =123;

c =c+"";

c =123;

// console.log("c = " + c);//c = 123

// console.log(c);

  result =1 +2 +"3";//33

  result ="1" +2 +3;//123

  result =100 -true;//99

  result =100 -"1";//99

  result =2 *"8";//16

  result =2 *undefined;//NaN

  result =2 *null;//0

  result =4 /2;//2

  result =3 /2;//1.5

// console.log("result = " + result)

  var d ="123";

d =d -0;

// console.log(typeof d);

// console.log(d);

  result =9 %3;//0

  result =9 %4;//1

  console.log("result = " +result);

</script>

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

推荐阅读更多精彩内容

  • 01javascript语法规范 <!DOCTYPE html> javascript语法...
    ouyangqinbin阅读 1,305评论 0 0
  • js是从上到下,从左到右执行的 一:变量 1.命名规则:必须由字母,下划线,数字和$符号组成,不能以数字开头。 2...
    小努努努力阅读 352评论 0 0
  • 一个完整的JavaScript实现包含了三个部分: ECMAScript DOM BOM。 JS的特点: 解释型语...
    咻咻咻滴赵大妞阅读 455评论 0 7
  • 变量 声明变量 命名变量区分大小写的语言第一个字符是字母或下划线_,数字不能作为第一个字符字符必须是字母,数字或者...
    flyingtoparis阅读 809评论 0 0
  • 有人说物理的极致是宗教, 数学的极致是哲学,是有一定道理的。 难怪有人会如此醉心于数学,今天是国际数学日,请看有趣...
    安平见阅读 1,664评论 0 4