js操作属性

JavaScript010

js操作属性,第1张

获取的页面元素,就可以对页面元素的属性进行操作,属性的操作包括属性的读和写。

操作属性的方法 

1、“.” 操作

2、“[ ]”操作

属性写法

1、html的属性和js里面属性写法一样

2、“class” 属性写成 “className”

3、“style” 属性里面的属性,有横杠的改成驼峰式,比如:“font-size”,改成”style.fontSize”

js操作属性

《script type=text/javascript》

widow。onload = function(){  全部加载渲染完之后才执行下一步

  document。getElementById(div1)。title= 我看到了;

《/script》

《body》

  《div id = div1 class = div1 title = 这是一个div元素,你看到了吗?》

《/body》

在js中有类似font-size这类似的系统回默认为-号,可以用小驼峰  fontSize写法

class属性

需要在class后面加Name

中括号

需要在变量加上中括号。[color]写法

style的写法['style']

  document。write 只能重绘整个页面

innerhtml 可以重绘页面的一部分。

JavaScript中的运算符主要用于连接简单的表达示,组成一个复杂的的表达式

一些运算符可以作用于任何数据类型(typeof),但大部分操作符希望操作数是特定的类型,而且大部分操作符会计算出(我们也常说返回)一个特定类型的值(typeof返的全是string)

在JavaScript中运算符通常会根据需要对操作数进行类型转换,乘法操作符希望操作数是数字,但是 "3" * "5"也是合法的,JavaScript会自动将其转换为数字计算,返回Number 15。

加法和减法是最简单的算数操作符,但是在JavaScript中运算符会根据需要对操作数进行类型转换

如果两个操作数都是Number类型,则执行常规运算

如果两个操作数不同类型则会按特定规则对操作数进行类型转换,规则如下:

只要其中有一个数是NaN结果就是NaN(任何涉及到NaN是运算都会返回NaN)

操作数涉及boolean值true会转换成1,false为0

涉及到字符串的运算

如果两个数值都是字符串就会把这两个字符串拼接起来

如果其中只有一个操作数是字符串,会将另一个操作数转换成字符串,然后再拼接

如果一个操作数是对象

会调用这个对象valueOf()或者toString()方法

我们可以通过 +号运算符来把某个值按照转换规则转换成数值,规则如下

涉及到字符串

如果字符串中只包含数值(包括前面带正号和负号的情况),会装换成十进制数字

如果字符中包含有效的十六进制格式,则会转换成相同大小的十进制格式的整数

如果字符串为空 "" 则为0

如果字符串中包含上面叙述格式外的字符则为NaN

不同于+号运算符可以用于拼接字符串,减法只能用于运算,所以会尽量把操作数转换为数值

操作数中有无法转换成数值的字符串结果就会为NaN

如果是操作数中的字符串能转换成数值的就转换成数值进行减发运算

如果操作数是对象依然和+好运算符一样调用valueOf和toString,然后进行减法运算

乘性操作符和减号操作符其实很类似,它们的作用都限于数值操作所以都会把操作数尽可能的转换成数值

使用(*),用于计算两个数的乘积

由(/)表示

求摸(余数)操作符由(%)表示

分为前置型和后置型,前置型位于操作数之前而后置型反之

前置型自增与自减都会在语句被求值之前作用在操作数上

上面这个例子 num3之所以等于21是应为num1先减去了1才和num2相加。

而num4也等于21是因为num1已经被减去了1然后进行加上num2的22就是等于23

原理是前置自增和前置自减在操作符中的优先级比 + = 都要高所以在这两个操作符还没执行时,num1已经进行了自减

后置型自增与自减会在语句被求值之后再作用于操作数上

num3的结果为22,而num4的结果为23就是因为语句被后置 ++ 或 -- 的优先级比 = 赋值操作符的优先级低,所以num1+num2的计算结果都赋值给了num3后才执行。

赋值运算符用于给变量赋值,最常见的赋值运算符,当然就是等号,表达式x=y表示将y赋值给x。除此之外,JavaScript还提供其他11个赋值运算符。

比较运算符比较两个值,然后返回一个布尔值,表示是否满足比较条件。JavaScript提供了8个比较运算符。

布尔运算符非常重要

可以应用于任何值。无论这个值是什么类型都会返回一个布尔值,当这个布尔值是求反后的结果

但是使用两个逻辑非就会有和类型装换函数一样的效果

同样可以用于所以类型

如果第一个操作数为false就直接返回第一个操作数

如果第一个数为true则返回第二个操作数

操作数不是布尔值的情况下会按照Boolean()转型函数的规则来装换成布尔值进行比较

由(||)表示

如果第一个操作数能转换为true就会返回第一个操作数

如果第一个操作数为false,则无论如何都会返回第二个操作数

condition? true case : false case

MDN运算符优先级汇总表