发表于: 2019-08-19 23:20:17

1 819


今日完成的事

  这几天把该解决的事都解决了,要开始好好写日报了。今天学习了JS的变量的强制转换和运算符,变量的强制转换就是将一个数据类型强制转换为其他的数据类型。比如其他的数据类型转换为字符串Sring,要强制转换成字符串有3种方法第一种是拼串。只要一个字符串+其他数据类型最后都会变成字符串字符串加数字显示的数据类型是字符串,布尔值也是一样。第二种方法调用tostring函数,语法是

变量.toString()该方法不会影响到原变量,它会将转换的结果返回,如果要改变原变量的话可以这么写a = a.toString(),null和undefined这两个值没有toString()方法,如果调用,会报错Number类型的变量,在调用toString()时,可以在方法中传递一个整数作为参数。此时它将会把数字转换为指定的进制,如果不指定则默认转换为10进制。比如变成二进制了,

还是10进制。第三种方法调用string()函数,它与toString()唯一的区别就是它能调用null和undefined。其他数据类型转换成Number,这个是调用Number()函数,如果是字符串转换为数字则有3中情况1.如果字符串中是纯数字,则直接将其转换为数字。2,如果字符串中有非数字的内容,则转换为NaN。3,如果字符串是一个空串或者是一个全是空格的字符串,则转换为0。

布尔值转换成数字true 转成 1,false 转成 0。null转换成0,undefined 转换成数字为NaN,parseint()函数,这个函数专门取整数,比如parseint(4.5)输出的是4.如果字符串前面是数字后面是文字它只取数字只取2016,如果对非String使用parseInt()或parseFloat(),它会先将其转换为String然后再操作,带两个参数时,表示进制转换。parseFloat()函数,它是将字符串转换为小数,

parseFloat()和parseInt()的作用类似,不同的是,parseFloat()可以获得有效的小数部分。其他数值转换为布尔值Boolean()函数,这个函数有以下几个特点,1.数字 --> 布尔。除了0和NaN,其余的都是true。2.字符串 ---> 布尔。除了空串,其余的都是true。3.null和undefined都会转换为false。4.对象也会转换为true。

运算符和表达式,运算符也叫操作符。通过运算符可以对一个或多个值进行运算,并获取运算结果。而运算的过程叫表达式,+,-,*,/这些都叫运算符3*2/6这叫表达式。运算符分为,算数运算符,自增运算符,逻辑运算符,赋值运算符,关系运算符,三元运算符(条件运算符)。算数运算符就是加减乘除取余小括号等。取余的运算符是这个%,运算符的运算规则是先算乘除、后算加减。小括号:能够影响计算顺序,且可以嵌套。没有中括号、没有大括号,只有小括号。百分号:取余。只关心余数。除了+号以外非Number类型的值进行运算时,会将这些值转换为Number然后再运算。任何的值和字符串做加法运算,都会先转换为字符串,然后再做拼串操作。任何值和NaN做运算的结果都是NaN。任何值做-、*、/运算时都会自动转换为Number,所以这里有一个小技巧为一个值用运算符来将其转换为Number数据类型是数值。一元运算符,只需要一个操作数叫做一元运算符,typeof就是典型的一元运算符,因为后面只跟一个操作数。自增和自减,自增分为两种a++和++a对于一个变量自增以后,原变量的值会立即自增1。也就是说,无论是 a++ 还是++a,都会立即使原变量的值自增1。两者的区别是a++等于原来变量的值,++a等于新值。自减原理同样。逻辑运算符,逻辑运算符主要有3个,&&与(且):两个都为真,结果才为真。|| 或:只要有一个是真,结果就是真。! 非:对一个布尔值进行取反。能参与逻辑运算的,都是布尔值,JS中的&&属于短路的与,如果第一个值为false,则不会看第二个值,JS中的||属于短路的或,如果第一个值为true,则不会看第二个值,如果对非布尔值进行逻辑运算,则会先将其转换为布尔值,然后再操作。非布尔值进行与或运算时,会先将其转换为布尔值,然后再运算,但返回结果是原值,&&运算如果第一个值为true,则必然返回第二个值(所以说,如果所有的值都为true,则返回的是最后一个值),如果第一个值为false,则直接返回第一个值。||运算如果第一个值为true,则直接返回第一个值,如果第一个值为false,则返回第二个值。赋值运算符可以将符号右侧的值赋值给符号左侧的变量。比如a += 5 等价于 a = a + 5。关系运算符,通过关系运算符可以比较两个值之间的大小关系如果成立,如果关系成立它会返回true,如果关系不成立则返回false。如对于非数值进行比较时,会将其转换为数字然后再比较。比如。==运算符,==这个符号,它是判断是否等于,而不是赋值。== 这个符号,还可以验证字符串是否相同。比如。==这个符号并不严谨,会将不同类型的东西,转为相同类型进行比较比如。undefined 衍生自 null,所以这两个值做相等判断时,会返回true,NaN不和任何值相等,包括他本身。===全等运算符这个就比两个等号严谨,比如

三元运算符也叫条件运算符。语法:条件表达式:语句1,语句2,条件运算符在执行时,首先对条件表达式进行求值:如果该值为true,则执行语句1,并返回执行结果,如果该值为false,则执行语句2,并返回执行结果,如果条件的表达式的求值结果是一个非布尔值,会将其转换为布尔值然后再运算。

明天计划的事

今天晚上经过师兄的提示对任务一有了思路,明天开始做任务一。

遇到的困难

对JS还是不了解,语法什么的都不是很懂。

收获

今天学会了各种数据模式和运算符。






返回列表 返回列表
评论

    分享到