Show newer

i don’t have a worksona and i think it’s too late to develop one

as far as i am aware, ToPrimitive does not throw an error for any builtin JavaScript object type

but you can make your own objects which throw errors by defining [Symbol.toPrimitive]() on them

Show thread

this is, to be clear, binary plus

unary plus just calls ToNumber

Show thread

anyway + fails if :—

1. ToPrimitive throws an error, for example because it does not produce a primitive

2. one of the resulting primitive values is a string, and ToString throws an error, because the primitive value cannot be converted to a string (symbols are the only primitive value which can’t be converted to strings by ToString atm)

3. neither primitive value is a string, and ToNumeric throws an error, for example because it does not produce a numeric value

4. The numeric values produced by calling ToNumeric on both sides are different types (presently the available types are numbers and bigints)

Show thread

for the people who aren’t up on the ECMAScript standard, ToPrimitive, ToString, and ToNumeric are abstract operations defined in the standard, not functions callable from within Javascript code

Show thread

compare

({ false: "good", true: "bad" }[{
toString () { return "false" },
valueOf () { return true },
}])

Show thread

it’s definitely a ⁜little⁜ funky because it calls ToString on ⁜the resulting primitive⁜ not on the original value so

"that is " + {
toString () { return "false" },
valueOf () { return true },
}

returns "that is true"

Show thread

it just calls ToPrimitive on both sides and then :—

• if the result on either side is a string, calls ToString on both sides and concatenates them

• otherwise, it calls ToNumeric on both sides and attempts to add them

Show thread

tfw u forget how exactly the + operator works in Javascript

DoM PaRsInG AnD SeRiAlIzAtIoN
=============================
DoMpArSeR, xMlSeRiAlIzEr, InNeRhTmL, aNd sImIlAr aPiS

w3c eDiToR’S DrAfT 02 mAy 2021

NPC dialogue trees be like

• (if the Player is female) Say something sexist

you’re allowed to hate everything if you just get the balances right

Show thread

i wish i knew literally any writers tackling the same sorts of problems i am

that’s right, kiddos, to quote the H·T·M·L Standard :—

Show thread

very interestingly, Safari’s X·M·L processor moves comments present in the internal subset of the D·T·D out of the DOCTYPE and places them just before the root element

i would like to say this is non‐standard behaviour, but there actually ⁜is⁜ no standard regarding taking an X·M·L document and parsing it into the D·O·M

; {
const re = /fails/uy
re.lastIndex = "this test ".length
"this test fails".replace(re, "succeeds")
}

Show thread
Show older
📟🐱 GlitchCat

A small, community‐oriented Mastodon‐compatible Fediverse (GlitchSoc) instance managed as a joint venture between the cat and KIBI families.