user6118: I'm trying to work out a counter that simply goes like:
2.5M views
At the moment I've got this expression working along with a Slider Control:
var num = effect("Slider Control")("Slider")
num = Comma(num) + "M views";
[num]

function Comma(number)
{
number = '' + Math.round(number);
if (number.length > 3)
{
var mod = number.length % 3;
var output = (mod > 0 ? (number.substring(0,mod)) : '');
for (i=0 ; i < Math.floor(number.length / 3); i++)
{
if ((mod == 0) && (i == 0))
output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
else
output+= ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
}
return (output);
}
else return number;
}

This though only makes my text layer go like:
2M views
I've tried already replacing the first line with:
effect("Slider Control")("Slider").value.toFixed(2)

But this adds a decimal followed by a comma normally, it doesn't work anyways on this expression but maybe it can help.
Thanks in advance.

user4426: Here's my cheat sheet for numeric text animations like this:
slider = (effect("Slider Control")("Slider").value);
tidying = (Math.round(slider * 100))/100;
SourceText = "$" + tidying + "bn" +"\r" +"DEBTS";

the .value is sometimes needed to force AE to look at the slider as a number, not as an object.
tidying is being done to round up to 2 decimal places
\r gives a line break
text is appended with +”text”+
you can comment out some text   /* like this */
So in the example above, you would get an output like this:
$5.23bn
DEBTS

So for your specific example, try something like this:
slider = (effect("Slider Control")("Slider").value);
tidying = (Math.round(slider * 10))/10;
SourceText = tidying + "M views";

To specify showing a decimal place at all times (displaying "2.0" when your slider is set to "2"), use the "toFixed" function, like this:
slider = (effect("Slider Control")("Slider").value);
tidying = ((Math.round(slider * 10))/10).toFixed(1);
SourceText = tidying + "M views";

Screenshot:


6118: <p>I'm trying to work out a counter that simply goes like:</p>

<p><strong>2.5M views</strong></p>

<p>At the moment I've got this expression working along with a <em>Slider Control</em>:</p>

<pre><code>var num = effect("Slider Control")("Slider")
num = Comma(num) + "M views";
[num]

function Comma(number)
{
number = '' + Math.round(number);
if (number.length &gt; 3)
{
var mod = number.length % 3;
var output = (mod &gt; 0 ? (number.substring(0,mod)) : '');
for (i=0 ; i &lt; Math.floor(number.length / 3); i++)
{
if ((mod == 0) &amp;&amp; (i == 0))
output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
else
output+= ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
}
return (output);
}
else return number;
}
</code></pre>

<p>This though only makes my text layer go like:</p>

<p><strong>2M views</strong></p>

<p>I've tried already replacing the first line with:</p>

<pre><code>effect("Slider Control")("Slider").value.toFixed(2)
</code></pre>

<p>But this adds a decimal followed by a comma normally, it doesn't work anyways on this expression but maybe it can help.</p>

<p>Thanks in advance.</p>
 4426: <p>Here's my cheat sheet for numeric text animations like this:</p>

<pre><code>slider = (effect("Slider Control")("Slider").value);
tidying = (Math.round(slider * 100))/100;
SourceText = "$" + tidying + "bn" +"\r" +"DEBTS";
</code></pre>

<p>the .value is sometimes needed to force AE to look at the slider as a number, not as an object.</p>

<p>tidying is being done to round up to 2 decimal places</p>

<p>\r gives a line break</p>

<p>text is appended with +”text”+</p>

<p>you can comment out some text   /* like this */</p>

<p>So in the example above, you would get an output like this:</p>

<pre><code>$5.23bn
DEBTS
</code></pre>

<p>So for your specific example, try something like this:</p>

<pre><code>slider = (effect("Slider Control")("Slider").value);
tidying = (Math.round(slider * 10))/10;
SourceText = tidying + "M views";
</code></pre>

<p>To specify showing a decimal place at all times (displaying "2.0" when your slider is set to "2"), use the "toFixed" function, like this:</p>

<pre><code>slider = (effect("Slider Control")("Slider").value);
tidying = ((Math.round(slider * 10))/10).toFixed(1);
SourceText = tidying + "M views";
</code></pre>

<p>Screenshot:
<a href="https://i.stack.imgur.com/toXvb.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/toXvb.png" alt="AE screenshot"></a></p>
